Hej,所以我嘗試使用 VBA 添加條件格式以補償其他一些編碼,這會不時更改范圍。我的問題是,我只有條件格式適用于xlEdgeRightand xlEdgeLeft。但是,VBA 總是告訴我它不能設定邊框樣式。有任何想法嗎?
Dim rngMark As Range
Dim DateCond As FormatCondition
Dim BordNum As Long
Call wsDef
Set rngMark = wksS.Range("E11:CPB25")
rngMark.FormatConditions.Delete
Set DateCond = rngMark.FormatConditions.Add(Type:=xlExpression, Formula1:="=AND(TODAY()>=E$7,TODAY()<F$7)")
DateCond.SetFirstPriority
With DateCond
.StopIfTrue = False
.Font.ThemeColor = xlThemeColorAccent2
.Font.Bold = True
.Borders.LineStyle = xlNone
.Borders.LineStyle = xlNone
End With
For BordNum = 7 To 8
With DateCond.Borders(BordNum)
.LineStyle = xlContinuous
.TintAndShade = 0
.Color = -16776961
.Weight = xlThin
End With
Next BordNum
uj5u.com熱心網友回復:
編程格式條件——尤其是邊框——有點特別。
在這種情況下,您必須使用xlLeft= -4131 和= -4152:xlRight
Dim BordNum As Long
Dim arrBordNum(1) As Long
arrBordNum(0) = -4131 'xlleft
arrBordNum(1) = -4152 'xlright
For BordNum = 0 To UBound(arrBordNum)
With DateCond.Borders(arrBordNum(BordNum))
.LineStyle = xlContinuous
.TintAndShade = 0
.Color = -16776961
.Weight = xlThin
End With
Next BordNum
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/449930.html
