我在排除简单边框功能时遇到了一些麻烦。有趣的是,我认为这在昨天有效。但是当我今天打开工作簿(从昨天开始保存)时,有些东西无效。
我可以编译包含以下代码的项目。但是,在运行时,我收到以下错误:“运行时错误'91':对象变量或没有设置块变量”
有帮助,不是吗?好吧,当我点击“debug”时,突出显示我指定my_range的行。本地窗口显示没有为my_range分配值。为什么这个范围在这样的作业中遇到麻烦?
我在Win7机器上使用Excel 2007。这是完整的程序代码:
Public Sub borders_test()
'activate the sheet
Worksheets("Sheet1").Activate
'create a range, and assign to it
Dim my_range As Range
my_range = ActiveSheet.Cells(2, 3)
'set a red border around the range
With my_range.Borders
.Color = RGB(255, 0, 0)
.Weight = xlMedium
End With
'now delete the border
'With my_range.Borders
' .LineStyle = xlNone
'End With
End Sub
从my_range赋值下面取出行没有任何区别。
答案 0 :(得分:0)
改为使用这个:
Dim my_range As Range
Set my_range = ActiveSheet.Cells(2, 3)
将对象分配给变量时,应始终使用Set
关键字。
顺便说一下,这篇文章可能会对你有所帮助:how to avoid using Select/Active statements:)