简单的VBAselect代码错误

我有这个简单的VBA代码,我想更改所选单元格的背景。 不知何故命令select。 我以前学过的东西不行 你能帮我解决这个问题吗? 我知道答案可能是愚蠢的,但我似乎无法弄清楚。

Sub set_background_color() 'Add background color to selected cells Selection.Interior.Color = RGB(255, 0, 0) End Sub 

谢谢

编辑:对于模糊的问题抱歉,这是我的第一个堆栈溢出问题,所以我没有想到的错误types的重要性。 它给我错误“编译错误:期望的function或variables”。

它被附加到一个button,但即使我没有button运行它,它给了我同样的错误。

编辑2:我在Mac上运行Excel 2011,直到现在它从来没有给我在VBA的任何兼容性问题。 但是,这似乎并没有工作。

问题不在你的代码中,它在你的单元格内。

检查单元格的locking状态和工作表的保护状态。

如果你的工作表没有被保护,那么试试这个

 Sub set_background_color() Dim r As Range On Error Resume Next Set r = Selection On Error GoTo 0 If Not r Is Nothing Then r.Interior.ColorIndex = 3 Else MsgBox "Invalid Selection" End If End Sub