我写了一个小宏来格式化excel表并将其导出为PDF。
我正在整理PDF的外观和感觉,我想修改边框。
我已经按照我想要的方式修改了边框,但我想尝试使用 xlHairline 类型的 XLBorderWeight 。
问题在于我想将颜色应用于 xlHairline 。它出现在我的PDF中黑色而不是我的 ColorIndex(3)(它的红色)
所有其他 XLBorderWeight 都会正确上色。
With Selection.FormatConditions(1)
With .Font
.ColorIndex = 3
End With
With .Borders
.ColorIndex = 3
.Weight = xlHairline
.LineStyle = xlContinuous
End With
End With
我也在条件格式之外尝试过,并出现同样的问题。
我搜索了过去2小时,看是否可以为 xlHairline 着色,但没有回答。
这里有人知道如何解决这个问题吗?
修改
使用.Borders(条件格式化)或.Borders(xlBorderIndex Enumeration)应用时,可以看到它的视觉效果
此处边缘为 xlHairline red ,而内部为 xlThin white
如果我使用我的脚本或Vityata的答案
,结果是一样的答案 0 :(得分:0)
这是一个简单的例子:
Sub TestMe()
With Selection
.Borders(xlEdgeLeft).Weight = xlHairline
.Borders(xlEdgeRight).Weight = xlHairline
.Borders(xlEdgeBottom).Weight = xlHairline
.Borders(xlEdgeTop).Weight = xlHairline
.Borders(xlEdgeTop).ColorIndex = 3
.Borders(xlEdgeLeft).ColorIndex = 3
.Borders(xlEdgeRight).ColorIndex = 3
.Borders(xlEdgeBottom).ColorIndex = 3
End With
End Sub
在您的代码中,如果您编写With .Borders(xlEdgeLeft)
,那么它可以正常工作,但仅适用于左边框。然后你必须想办法覆盖所有4个边缘,例如: