给出以下代码: 我似乎无法成功地将Range对象变量从一个子函数传递到另一个子函数.我花了整整一天时间研究和试验,然后才吞下骄傲来到这里.
请阅读下面的评论,并回答您有关为什么最后两行不会表现的任何想法.
Public Sub doSomethingToRows(ROI As Range)
*'do Something with the cell values within the supplied range*
End Sub
'
Public Sub testDoAltRows()
Dim RegionOfInterest As Range 'is this an object or not?
'*The following yields: Class doesn't support Automation (Error 430)*
'*Set RegionOfInterest = New Worksheet 'this just gives an error*
Set RegionOfInterest = Worksheets("Sheet1").Range("A1")
RegionOfInterest.Value = 1234.56 '*okay, updates cell A1*
Set RegionOfInterest = Worksheets("Sheet1").Range("B5:D15")
RegionOfInterest.Columns(2).Value = "~~~~~~" '*okay*
'doSomethingToRows (RegionOfInterest) 'why do I get …Run Code Online (Sandbox Code Playgroud) 我有这个手动输入的表:
LINE ¦ ROOM A¦ ROOM B¦ ROOM C¦ ROOM D¦ ROOM E¦ ROOM F¦
1 ¦ 1 ¦ 0 ¦ 0 ¦ 0 ¦ 0 ¦ 0
2 ¦ 2 ¦ 0 ¦ 0 ¦ 0 ¦ 0 ¦ 0
3 ¦ 3 ¦ 0 ¦ 0 ¦ 0 ¦ 0 ¦ 0
4 ¦ 4 ¦ 0 ¦ 0 ¦ 0 ¦ 0 ¦ 0
5 ¦ 5 ¦ 0 ¦ 0 ¦ 0 ¦ 0 ¦ 0 …Run Code Online (Sandbox Code Playgroud) 我正在Excel VBA中创建几个需要使用3个词典的自定义函数。
这些字典一旦设置就不会更改。
现在,每个字典都在每个函数中创建。
我希望清理它,设置一次字典,然后在函数中引用它。
不幸的是,我似乎找不到有关此主题的任何文档。