偏移vba对象
我有一个简单的宏,已经工作了几个月,现在当我重新格式化(线索,但我无法弄清楚)突然它的破碎。我知道偏移函数的问题中心,这似乎有一些问题。偏移vba对象
我想使用别的东西(单元格),但我不知道如何。
具体来说,我有一个范围,我正在检查并改变附近的单元格。
有没有办法做这样的事情与“细胞”
Dim x As Variant
x = Worksheets("Book1").Range("A131")
If (x = some value And x>0) Then
x.Offset(0,7).Value = some value
End if
现在Excel是显示我的对象是必需的
您需要使用SET的错误:
SET x = Worksheets("Book1").Range("A131")
当您不使用SET时,您将返回单元格中的值,而不是实际的范围对象(使用Offset()时所需的)...使用X后使用x.Value返回该细胞。
谢谢,但我在范围值的宏中使用了SET。对不起,我没有在示例代码中使用'对于每个人都开始阅读 – AbeeCrombie 2013-02-27 17:06:04
我测试了你的代码,因为你发布了它,它返回了你提到的错误(“对象是需要)我将它改为包含SET,并按预期工作,你能用你实际使用的代码更新你的问题吗? – 2013-02-27 17:28:20
使用您的代码细胞():
Dim x As Variant
Dim ws as Worksheet
Set ws = Worksheets("Book1")
x = ws.Cells(131, 1).Value ' row 131, column 1 (A131)
If (x = some value And x>0) Then
ws.Cells(138, 1).Value = someValue ' row 138, column 1 (A138)
End if
论哪一行代码发生错误? – 2013-02-27 16:30:34
你能否更新你的代码到完全是导致问题的代码?例如,具有'(x =某个值)'会因为“某个值”为2个单词而容易出错......请在您的代码示例中更明确一点,以便我们可以更轻松地确定问题所在...... – 2013-02-27 17:32:55