VBA 调暗并设置范围全局
VBA Dim and Set Range global
我在全局使用变量时遇到了一个可能很简单的问题:
我想调暗和设置各种范围,以便在不同的潜艇中使用它们。
给出的简单示例:
Sub Variables()
Dim rng1 as Range
Set rng1 = Worksheets("Sheet1").Cells
Dim rng2 as Range
Set rng2 = Worksheets("Sheet2").Cells
End Sub
然后为了在其他子程序中使用我的变量,我尝试调用我的变量子程序,例如:
Sub calc()
Call Variables
Dim i as Integer
i = rng1.Find("Hello").Column
With Sheet1.Cells(1, i)
.Value = "World"
End With
我收到错误 "Object required"。我也尝试将我的变量定义为 Public Sub 但它仍然不起作用。
我希望你知道如何解决这个问题或如何给出不同的方法!
谢谢!
Option Explicit
Dim rng1 As Range
Dim rng2 As Range
Sub Variables()
Set rng1 = Worksheets("Sheet1").Cells
Set rng2 = Worksheets("Sheet2").Cells
End Sub
Sub calc()
Variables
Dim i As Integer
i = rng1.Find("Hello").Column
Sheet1.Cells(1, i).Value = "World"
End Sub
你在Sub中声明,你不能在其他Sub中使用它们,所以这就是为什么它给你一个错误。
这里的解决方案是将它们放在程序的顶部。
我在全局使用变量时遇到了一个可能很简单的问题:
我想调暗和设置各种范围,以便在不同的潜艇中使用它们。 给出的简单示例:
Sub Variables()
Dim rng1 as Range
Set rng1 = Worksheets("Sheet1").Cells
Dim rng2 as Range
Set rng2 = Worksheets("Sheet2").Cells
End Sub
然后为了在其他子程序中使用我的变量,我尝试调用我的变量子程序,例如:
Sub calc()
Call Variables
Dim i as Integer
i = rng1.Find("Hello").Column
With Sheet1.Cells(1, i)
.Value = "World"
End With
我收到错误 "Object required"。我也尝试将我的变量定义为 Public Sub 但它仍然不起作用。
我希望你知道如何解决这个问题或如何给出不同的方法!
谢谢!
Option Explicit
Dim rng1 As Range
Dim rng2 As Range
Sub Variables()
Set rng1 = Worksheets("Sheet1").Cells
Set rng2 = Worksheets("Sheet2").Cells
End Sub
Sub calc()
Variables
Dim i As Integer
i = rng1.Find("Hello").Column
Sheet1.Cells(1, i).Value = "World"
End Sub
你在Sub中声明,你不能在其他Sub中使用它们,所以这就是为什么它给你一个错误。
这里的解决方案是将它们放在程序的顶部。