有没有办法使用VBA刷新单元格条件格式?
问题: 我处于这样一种情况:我有一个单元格(A1)引用另一个单元格(B1),其中包含一个= SUM()数值,格式为“数字,2位小数”,但单元格(A1)具有条件格式“Cell Value> = 1000”并且我正在应用自定义格式,否则它使用货币格式作为欧元。
我使用VBA更新值,然后执行
Application.CalculateFull
更新了我的公式,但这种条件格式只在第一次超过1000时应用...如果小于1000则不会恢复到原始格式。
之前有任何人遇到此问题,并知道如何更新条件格式?没有使用VBA来选择单元格并刷新它的一些方法吗?
答案 0 :(得分:1)
我决定选择单元格,重新应用公式然后在每次VBA运行完毕后激活它,下面现在解决了我的问题..它只是一个耻辱它的手册。
Range("A1").Formula = "=B1"
Range("A1").Select
Range("A1").Activate
答案 1 :(得分:1)
你也可以试试这个:
Sub refreshScreen()
Application.Parent.Visible = False
Application.Parent.Visible = True
End Sub
答案 2 :(得分:0)
如果使用自定义格式,这似乎是适用于条件格式的NumberFormat属性的错误(或不一致)。条件格式将应用自定义NumberFormat,但在不再为真时不会恢复为默认值。当仅使用字体/背景颜色时,使用VBA应用条件格式将按预期工作,但在应用自定义NumberFormat时将不再按预期运行。我通过为真假场景创建两种条件格式来解决这个问题。
条件为真时隐藏文字
.NumberFormat = ";;;"
条件为假时显示文字
.NumberFormat = "General"
设置了以下内容,但对行为没有影响:
这是一个链接到这个帖子,让我朝着正确的方向前进:
http://www.mrexcel.com/forum/excel-questions/735479-conditional-formatting-not-updating.html