Excel 无法在VBA中设置范围变量
我是VBA的新手,正在尝试学习变量。我有一段简单的代码,可以将变量设置为一个范围:Excel 无法在VBA中设置范围变量,excel,vba,Excel,Vba,我是VBA的新手,正在尝试学习变量。我有一段简单的代码,可以将变量设置为一个范围: Sub Test() Dim DataRange As Range DataRange = Workbooks("Rooms.csv").Sheets(1).Range("A3", "AK17068") End Sub 当我运行时,我得到运行时错误“91”:未设置对象变量或With block变量。。。。这不是我对Dim语句所做的吗?这是指什么 我看到在某些情况下(我不完全理解什么时候)我应该使
Sub Test()
Dim DataRange As Range
DataRange = Workbooks("Rooms.csv").Sheets(1).Range("A3", "AK17068")
End Sub
当我运行时,我得到运行时错误“91”:未设置对象变量或With block变量。。。。这不是我对Dim
语句所做的吗?这是指什么
我看到在某些情况下(我不完全理解什么时候)我应该使用选项Strict On
,但当我尝试使用此选项时,我得到了一个语法错误(预期:Base或Compare或Explicit或Private
)。我想我根本就误解了这应该如何工作(AM+C++ DEVE培训) < P>这里:
Sub Test()
Dim DataRange As Range
Set DataRange = Workbooks("Rooms.csv").Sheets(1).Range("A3", "AK17068")
End Sub
对象
变量是用设置的
您需要设置数据范围
Set DataRange=workbook(“Rooms.csv”).Sheets(1)Range(“A3”、“AK17068”)
使用With语句引用工作簿和工作表,如果您计划设置更多范围,我们可以获得不重复工作簿和工作表名称的优势。见下文:
Option Explicit
Sub Test()
Dim DataRange As Range, DataRange2 As Range
With Workbooks("Rooms.csv").Worksheets("Sheet1") '<- Using *With Statement* referring to the workbook & worksheet
Set DataRange = .Range("A3", "AK17068")
Set DataRange2 = .Range("A1") '<- For example purpoces
End With
End Sub
选项显式
子测试()
变暗数据范围作为范围,数据范围2作为范围
带有工作簿(“Rooms.csv”)。工作表(“Sheet1”)'