FormatConditions边框在单个边上

时间:2013-07-22 21:30:52

标签: vba excel-vba excel

我试图在第1列中的数据发生更改时在行之间添加边框。此代码在.LineStyle = xlContinuous处中断。我得到的错误是“无法设置Border类的LineStyle属性”。

代码中是否有错误或替代方法?

Sub AddBorders()
    With Range("A:B").FormatConditions.Add(Type:=xlExpression, Formula1:="=A1<>A2")
        With .Borders(xlEdgeBottom)
            .LineStyle = xlContinuous
            .ColorIndex = xlAutomatic
            .TintAndShade = 0
            .Weight = xlThin
        End With
    End With
End Sub

2 个答案:

答案 0 :(得分:5)

它似乎不是xlEdgeBottom只是xlBottom。所以改变这一行:

With .Borders(xlEdgeBottom)

With .Borders(xlBottom)

它对我有用

答案 1 :(得分:0)

除了使用xlBottom而不是xlEdgeBottom之外,另一种可能导致此错误的原因是将三种以上的条件格式应用于相同的范围。我遇到了同样的问题,这就是为我解决的问题。

MSDN documentation on the Add method州:

  

您无法为范围定义三种以上的条件格式。使用Modify方法修改现有条件格式,或使用Delete方法删除现有格式,然后再添加新格式。