我正在尝试使用Excel 2010 VBA执行以下操作:
到目前为止,我有这个但是在设置颜色的行上出现全局范围错误:
Public Sub ToggleButton1_Click()
Dim ActRange As Range
Dim ActSheet As Worksheet
Dim bgndColour As Variant
bgndColour = ToggleButton1.BackColor
Set ActSheet = ActiveSheet
Set ActRange = Selection
ActSheet.Select
ActRange.Select
Range(ActRange).Interior.Color = bgndColour
End Sub
答案 0 :(得分:1)
ActRange
已经是一个范围。无需使用Range()
对象
试试这个
ActRange.Interior.Color = bgndColour
您的代码可以缩减为
Public Sub ToggleButton1_Click()
If TypeName(Selection) <> "Range" Then
MsgBox "Select a range first."
Exit Sub
End If
Selection.Interior.Color = ToggleButton1.BackColor
End Sub
答案 1 :(得分:1)
我不想添加不必要的行,我看到你可以在
中恢复你的代码Selection.Interior.Color = bgndColour
如果这不起作用,那么你的bgndcolour变量
是错误的