首页 > 解决方案 > 如何在 vba 中使用计数器更新给定单元格时复制电子表格格式?

问题描述

我正在处理的项目是在 Excel 中创建一个宏,它从给定选项卡复制格式并将其复制到后续选项卡中。

提醒一下,这是我第一次接触 VBA,但我确实有一些 C++ 经验

我已经找到了一个很好的模板,可以很好地完成上述任务,如下所示:

Public Sub CopySheetAndRenameByCell()
    Dim wks As Worksheet
    Set wks = ActiveSheet

    ActiveSheet.Copy After:=Worksheets(Sheets.Count)

    If wks.Range("H9").Value <> "" Then
        On Error Resume Next
        ActiveSheet.Name = wks.Range("H9").Value
    End If

    wks.Active
End Sub

此时我要解决的问题是集成一行代码,该代码行充当计数器,每张新工作表将给定单元格的值更新 +1,并为工作表标签引用更新的单元格。

任何见解将不胜感激。

标签: excelvba

解决方案


Public Sub AddNewPage()

Sheets(Sheets.Count).Select 'references last sheet in workbook

Dim wks As Worksheet 'establish static variable wks to reference worksheets

Set wks = ActiveSheet 'set wks to be the defined active sheet





ActiveSheet.Copy After:=Worksheets(Sheets.Count)

Range("H9").Value = Range("H9").Value + 1 'sets value of cell H9 in new worksheets to sequentially increase by 1



If wks.Range("H9").Value <> "" Then

    On Error Resume Next

    wks = Sheets(Sheets.Count).Select 'references last sheet in workbook

    ActiveSheet.Name = wks.Range("H9").Value + 1 'sets page title to sequentially increase by 1 with each iteration

End If

wks.Activate

End Sub

这是我在互联网的帮助下提出的解决方案。感谢您的回复。


推荐阅读