Excel VBA-模块范围变量
我已将变量分配到第一个子过程上方,以使其可用于所有子过程。当我运行第二个过程时,我收到一个“未设置块变量”错误Excel VBA-模块范围变量,excel,vba,Excel,Vba,我已将变量分配到第一个子过程上方,以使其可用于所有子过程。当我运行第二个过程时,我收到一个“未设置块变量”错误 Dim CWS As Worksheet Sub Test() Set CWS = WB.Worksheets("Checks") CWS.Activate CWS.Range("M5:M16").Copy CWS.Range("f5").PasteSpecial xlValues CWS.Range("M19:M32").Copy CWS.Range("f19").Past
Dim CWS As Worksheet
Sub Test()
Set CWS = WB.Worksheets("Checks")
CWS.Activate
CWS.Range("M5:M16").Copy
CWS.Range("f5").PasteSpecial xlValues
CWS.Range("M19:M32").Copy
CWS.Range("f19").PasteSpecial xlValues
End Sub
建议声明对象变量
wb
并将其设置为内存,例如,通过Dim wb As WorkBook
和set wb=ThisWorkbook
(或仅使用工作表的代码名作为参考-请参阅VB编辑器的工具窗口~>(名称)
(括号中);顺便说一句,尽量避免不必要的激活和。选择:-)谢谢,因此我需要在它正在运行的子过程中设置它,它无法从另一个子过程获取该数据