我使用VBA创建了一个数据透视表。这是我的代码。
.PivotTables(1).PivotFields("Fineline").ShowDetail = False
'Create Borders
Range("A2:K2").BorderAround Weight:=xlMedium
Range(.Range("A1"), .Range("K" & .Range("K" & Rows.Count).End(xlUp).Row)).BorderAround Weight:=xlMedium
Range(.Range("B1"), .Range("B" & .Range("B" & Rows.Count).End(xlUp).Row)).BorderAround Weight:=xlMedium
Range(.Range("C1"), .Range("E" & .Range("E" & Rows.Count).End(xlUp).Row)).BorderAround Weight:=xlMedium
Range(.Range("F1"), .Range("H" & .Range("H" & Rows.Count).End(xlUp).Row)).BorderAround Weight:=xlMedium
Range(.Range("I1"), .Range("K" & .Range("K" & Rows.Count).End(xlUp).Row)).BorderAround Weight:=xlMedium
我的数据透视表是表格形式,因此我可以打开和关闭某些标签,因此第一行代码不显示详细信息。如您所见,我想在C列到E,F到H和I到J之间创建一个边框。当我运行代码时,表格看起来应该如何。但是,当我在数据透视表中打开一个选项卡时,我的所有列现在都有一个边框。我无法弄清楚为什么边界会这样做?
谢谢,
答案 0 :(得分:1)
数据透视表具有“样式”,您可以复制和修改。因此,您不需要使用VBA执行此操作,而是复制看起来像您想要的样式,并进行所需的任何更改,并且它将自动重新应用。
要执行此操作,请右键单击样式库中的样式,然后选择复制... :
...然后为其命名,然后单击要以不同方式格式化的任何区域:
例如,如果要在整个数据透视表周围添加边框,请选择整个表,然后单击“格式”按钮,并从顶部的选项卡中选择边框。对话框然后应用您想要的格式:
然后单击“确定”关闭对话框。数据透视表在此阶段看起来仍然相同,因为在设置新样式时,尚未将其应用于此数据透视表。因此,请返回样式库,单击向下箭头,然后从自定义区域中选择新的数据透视表stlye: