Excel 更改命令按钮颜色

Excel 更改命令按钮颜色,excel,vba,Excel,Vba,我希望有人能帮助我,因为我是VBA的新手。我有一个电子表格,上面有200个命令按钮。我希望能够根据单元格中的值更改按钮的背景色。200个按钮的名称为FACopy1到FACopy200。下面的代码用于更改特定按钮(在本例中为FACopy1) 但是,我希望更改的按钮基于单元格值。例如,如果单元格值为7,则它将更改FACopy7的颜色。我想要这样的东西: ActiveSheet.FACopy(cell value).BackColor = RGB(0, 255, 255) 有人知道怎么做吗?

我希望有人能帮助我,因为我是VBA的新手。我有一个电子表格,上面有200个命令按钮。我希望能够根据单元格中的值更改按钮的背景色。200个按钮的名称为FACopy1到FACopy200。下面的代码用于更改特定按钮(在本例中为FACopy1)

但是,我希望更改的按钮基于单元格值。例如,如果单元格值为7,则它将更改FACopy7的颜色。我想要这样的东西:

    ActiveSheet.FACopy(cell value).BackColor = RGB(0, 255, 255)
有人知道怎么做吗?

这应该行得通。 修改以满足您的需要

Sub Test1()
Dim cb As CommandButton
Dim x As Integer
x = Range("A1") * 1
Set cb = ActiveSheet.Shapes("FACopy" & x).OLEFormat.Object.Object
            cb.BackColor = RGB(0, 255, 255)
End Sub
试试看


谢谢你,约翰!真是太棒了!我真的很感谢你在这方面的帮助。
Sub Test1()
Dim cb As CommandButton
Dim x As Integer
x = Range("A1") * 1
Set cb = ActiveSheet.Shapes("FACopy" & x).OLEFormat.Object.Object
            cb.BackColor = RGB(0, 255, 255)
End Sub
Sub test()
    Dim ws As Worksheet
    Dim btn As OLEObject
    Dim i As Integer
    Set ws = ActiveSheet
    For i = 1 To 200
        Set btn = ws.OLEObjects("FACopy" & i)
        btn.Object.BackColor = RGB(200, 255, 255)
    Next i
    
End Sub