gpt4 book ai didi

vba - 更改选项卡颜色并定期刷新

转载 作者:行者123 更新时间:2023-12-01 06:05:24 24 4
gpt4 key购买 nike

我有一个电子表格,其中每个工作表在单元格 C94 中都有一个值。我希望选项卡颜色根据此单元格中的值而改变。然后我希望工作表每 60 秒左右刷新一次,并更新工作簿中所有选项卡的颜色。

到目前为止,我已将此代码输入到每个选项卡中:

Private Sub Worksheet_Change(ByVal Target As Range)
Select Case Range("$C$94").Value
Case "In Progress"
Me.Tab.ColorIndex = 43
Case "Missed Lay"
Me.Tab.ColorIndex = 3
Case "Action Required"
Me.Tab.ColorIndex = 45
Case "Complete"
Me.Tab.ColorIndex = 1
Case Else
Me.Tab.ColorIndex = xlColorIndexNone
End Select
End Sub

每当我手动更改单元格中的数据并按回车键时,它就会工作并更新。我如何在不需要更改值并按回车键的情况下刷新选项卡颜色?是否有可能让它每 60 秒刷新一次,或者当工作簿中任何其他工作表的单元格中的数据发生更改时?两者都是满足我的要求的合适解决方案。

最佳答案

最有效的方法是让Excel更新所有工作表

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Dim ws As Worksheet
For Each ws In ThisWorkbook.Worksheets
With ws.Tab
Select Case ws.Range("C94").Value2
Case "In Progress": .ColorIndex = 43
Case "Missed Lay": .ColorIndex = 3
Case "Action Required": .ColorIndex = 45
Case "Complete": .ColorIndex = 1
Case Else: .ColorIndex = xlColorIndexNone
End Select
End With
Next
End Sub

有办法每分钟监控一次变化,但是会占用更多的资源

关于vba - 更改选项卡颜色并定期刷新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32413328/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com