VBA:使用With with a space

时间:2015-04-13 15:56:21

标签: vba excel-vba pivot-table excel

我正在尝试清理创建动态交叉表的代码

我有很多要添加的字段,我正在考虑使用With:

 Ws.PivotTables(DCT_Name).AddDataField Ws.PivotTables(DCT_Name).PivotFields("Quantity"), "Total Qty", xlSum

改为:

With Ws.PivotTables(DCT_Name).AddDataField Ws.PivotTables(DCT_Name)
    .PivotFields ("Quantity"), "Total Qty", xlSum

但这不起作用......

我被迫做了:

With Ws.PivotTables(DCT_Name)
    .AddDataField Ws.PivotTables(DCT_Name).PivotFields ("Quantity"), "Total Qty", xlSum

谢谢你的答案!

1 个答案:

答案 0 :(得分:2)

不,应该阅读

With Ws.PivotTables(DCT_Name)
    .AddDataField .PivotFields ("Quantity"), "Total Qty", xlSum  

通常,公共前缀(对象)被放入With语句中。