Vba Excel宏-如何根据同一工作簿中单独工作表中的单元格更改选项卡颜色?

Vba Excel宏-如何根据同一工作簿中单独工作表中的单元格更改选项卡颜色?,vba,excel,Vba,Excel,我尝试了以下方法,但没有效果-还有其他建议吗 Private Sub Worksheet_Change(ByVal Target As Range) MyVal = Range("'Summary'!A8").Text With ActiveSheet.Tab Select Case MyVal Case "Black" .Color = vbBlack Case "Red" .Color = vbRed

我尝试了以下方法,但没有效果-还有其他建议吗

Private Sub Worksheet_Change(ByVal Target As Range)
MyVal = Range("'Summary'!A8").Text

With ActiveSheet.Tab
    Select Case MyVal
        Case "Black"
            .Color = vbBlack
        Case "Red"
            .Color = vbRed
        Case "Green"
            .Color = vbGreen
        Case "Yellow"
            .Color = vbYellow
        Case "Blue"
            .Color = vbBlue
        Case "Magenta"
            .Color = vbMagenta
        Case "Cyan"
            .Color = vbCyan
        Case "White"
            .Color = vbWhite
        Case Else
            .ColorIndex = xlColorIndexNone
    End Select
End With
End Sub

“它不起作用”不是很有帮助。发生了什么-一个错误,什么都没有?你还需要弄清楚这个代码在哪里,哪个工作表标签应该是彩色的。我刚刚运行了一个类似的代码,代码似乎工作正常。唯一的区别是我删除了您的
MyVal
声明,并将
Select
语句更改为:
Select Case Sheets(“Summary”).Range(“A8”).Value
Private Sub Worksheet_Change(ByVal Target As Range)
Dim MyVal$
MyVal = ActiveWorkbook.Sheets("Summary").Range("A8")

With ActiveSheet.Tab
    Select Case MyVal
        Case "Black"
            .Color = vbBlack
        Case "Red"
            .Color = vbRed
        Case "Green"
            .Color = vbGreen
        Case "Yellow"
            .Color = vbYellow
        Case "Blue"
            .Color = vbBlue
        Case "Magenta"
            .Color = vbMagenta
        Case "Cyan"
            .Color = vbCyan
        Case "White"
            .Color = vbWhite
        Case Else
            .ColorIndex = xlColorIndexNone
    End Select
End With
End Sub