0
Sub TEST()
    If cells(i, "R").Value <> "UK" Then
        cells(i, "R").Interior.ColorIndex = 3
    End If
End Sub

如果我运行这个程序,它会抛出应用程序定义的错误 \

我是 Excel 新手(初学者)

如何纠正这个错误!!!

提前致谢

4

3 回答 3

2

我认为问题是“R”,我知道单元格方法需要 2 个参数,一个是行,另一个是列(按此顺序),但这是按数字而不是字母完成的,因此如果将其更改为单元格(1,18)然后上面的代码工作正常。

此链接也可能有助于了解更多信息,除其他外,它描述了您通常如何首先选择范围,因为我相信您上面的代码将假定当前选择的页面,但是您可能希望从另一个页面单击按钮运行或电子表格一打开。

http://msdn.microsoft.com/en-us/library/office/ff196273.aspx

于 2013-09-08T09:58:35.250 回答
2

问题是变量i没有被赋值。VBA 假定它为零。由于i用于确定单元格的行,因此 Excel 会抛出异常,因为没有第 0 行!

于 2013-09-08T11:02:20.527 回答
1

首先你必须定义 i 变量

例如: Dim i 作为变体

于 2013-09-08T12:08:21.443 回答