编译错误:预期:表达式数据透视表

时间:2015-04-21 19:58:15

标签: excel vba excel-vba pivot excel-2010

我在运行VBA代码时遇到此问题。我创建了从SAP GUI下载报告的代码,并使用该电子表格创建数据透视表。我使用宏录制器来创建枢轴,但我在运行它时遇到了这个问题。

Range("A1").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
Sheets.Add
ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
    "Sheet1!R1C1:R1500C18", Version:=xlPivotTableVersion14).CreatePivotTable
    TableDestination:="Sheet4!R3C1", TableName:="PivotTable1", DefaultVersion _
    :=xlPivotTableVersion14
Sheets("Sheet4").Select
Cells(3, 1).Select
With ActiveSheet.PivotTables("PivotTable1").PivotFields("Company Code")
    .Orientation = xlRowField
    .Position = 1
End With
With ActiveSheet.PivotTables("PivotTable1").PivotFields("FI / MM Doc")
    .Orientation = xlRowField
    .Position = 2
End With
ActiveSheet.PivotTables("PivotTable1").AddDataField ActiveSheet.PivotTables( _
    "PivotTable1").PivotFields("Document number"), "Count of Document number", _
    xlCount

问题出现在Tabledestination:="Sheet4!R3C1",显示":="这是一个意想不到的错误。

你们知道我怎么解决这个问题?

1 个答案:

答案 0 :(得分:0)

您错过了_符号以将语句转移到下一行。这将消除您的编译错误。

但是,我还要考虑确保您对Sheet4的引用是正确的:当您添加新工作表时,无法保证Excel会将其称为Sheet4,因此,您应该在.Add语句中强制使用该名称,或者在创建数据透视表后不要将其明确地称为Sheet4。当Excel添加工作表时,无论如何新工作表将成为活动工作表。