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