我需要在VBA中为条件格式化语句编写以下公式:
r.FormatConditions.Add Type:=xlExpression, Formula1:="=AND($AYQ4<=D$3;$AYR4>=D$3)"
在VBA中,我有以下数据类型变量,表示各种地址部分:
使用VBA变量编写上述语句而不是键入行号和列名的最佳方法是什么?有没有更好的方式:
r.FormatConditions.Add Type:=xlExpression, Formula1:="=AND($" colnumtoletter(lStartColumn) & lCurrentRow & "<=" & columntoletter(lCurrentColumn) & "$" & lHeadersRow & ",$" & lEndColumn & lCurrentRow & ">=" & lCurrentColumn & "$" & lHeadersRow" & ")"
答案 0 :(得分:1)
如果r(或其第一个单元格)引用D4,则可以使用:
r.FormatConditions.Add Type:=xlExpression, Formula1:="=AND(R[0]C" & lStartColumn & "<=R" & lHeadersRow & "C,R[0]C" & lEndColumn & ">=R" & lHeadersRow & "C)"
作为旁注,请确保在执行此操作之前选择r,因为您使用的是相对引用。