我正在尝试将数据从一个工作表复制到另一个工作表。我有一本包含大约 62 个工作表选项卡的工作簿。
对我来说特别棘手的部分是数据需要复制到的工作表并不总是相同的。
我有一个下拉菜单,列出了 62 种不同的设备。这显示在名为“HOME”的工作表的 G1 中。我希望根据选择将文本复制到正确的选项卡。
我想出了如何复制特定文本,当我这样做时,我看到指定的工作表上显示了“TEXT”一词。
Sheets(Range("g1").Value).Activate
Range("a1").Value = "TEXT"
我无法弄清楚如何根据相同的下拉菜单将 G4:G24 从我的“HOME”工作表复制到另一个工作表。
这就是我尝试过的。
Private Sub CommandButton1_Click()
Worksheets("HOME").Range("g4:g24").Copy
Sheets(Range("g1").Value).Activate
Range("a1").Value = "TEXT"
Sheets(Range("g1").Value).Activate
Range("f4").PasteSpecial
End Sub
明确工作簿和工作表 - 切勿在没有限定工作表的情况下使用范围/单元格(尽管如果您引用关联的工作表,则可以在工作表代码模块中使用它)。
Private Sub CommandButton1_Click()
Dim wb As Workbook, ws As Worksheet
Set wb = ThisWorkbook 'or ActiveWorkbook?
With wb.Worksheets("HOME")
Set ws = wb.Worksheets(.Range("G1").Value) 'create a worksheet reference
ws.Range("A1").Value = "TEXT" '...and use it
.Range("g4:g24").Copy ws.Range("f4")
End With
End Sub
参见示例:工作表、单元格和范围的默认范围是什么? https://stackoverflow.com/questions/28439376/what-is-the-default-scope-of-worksheets-and-cells-and-range/28439984#28439984
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)