Excel 具有不同缓存的第二个数据透视表,位于不同的工作表上,isn';没有被创造

Excel 具有不同缓存的第二个数据透视表,位于不同的工作表上,isn';没有被创造,excel,vba,pivot-table,Excel,Vba,Pivot Table,我显然错过了一些显而易见的东西 我基于一张工作表创建一个透视表,并获取所有数据字段。然后,当我尝试从第二个源工作表创建新缓存时,新的透视表不会出现 lRow = Sheets("Source1").Cells(Sheets("Source1").Rows.Count, 1).End(xlUp).Row lCol = Sheets("Source1").Cells(1, Sheets("Source1").Columns.Count).End(xlToLeft).Column ' Manipul

我显然错过了一些显而易见的东西

我基于一张工作表创建一个透视表,并获取所有数据字段。然后,当我尝试从第二个源工作表创建新缓存时,新的透视表不会出现

lRow = Sheets("Source1").Cells(Sheets("Source1").Rows.Count, 1).End(xlUp).Row
lCol = Sheets("Source1").Cells(1, Sheets("Source1").Columns.Count).End(xlToLeft).Column

' Manipulate data, including new columns
Set PRange = Sheets("Source1").Cells(1, 1).Resize(lRow, lCol + 2)
Set PDest = Sheets("Source1 Summary")

Set PCache = ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
    PRange).CreatePivotTable(TableDestination:= _
    PDest.Cells(3, 1), TableName:="Source1Pivot")

' Set up the table with the data fields, all works perfectly

'For the new Pivot Table:
lRow = Sheets("Source2").Cells(Sheets("Source2").Rows.Count, 1).End(xlUp).Row
lCol = Sheets("Source2").Cells(1, Sheets("Source2").Columns.Count).End(xlToLeft).Column

Set PRange = Sheets("Source2").Cells(1, 1).Resize(lRow, lCol + 1)
Set PDest = Sheets("Source2 Summary")

Set PCache2 = ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
    PRange).CreatePivotTable(TableDestination:= _
    PDest.Cells(3, 1), TableName:="Source2Pivot")
此时,不会创建新的透视表,添加字段也不起作用。宏以“Source2 Summary”为空结束


我确实验证了新的lRow和lCol是从Source2页面提取的。你能看到我错过的愚蠢的东西吗?我还没有找到关于在新页面上使用新源设置新轴心的任何信息。。。大概是因为它通常只是工作

您正在将prange设置为比基础数据宽两列,因此无法创建数据透视表,因为这些空白列没有列标题

在这段代码上面的某个地方,你是否有一个关于“下一步恢复时出错”的
?如果是,请将其注释出来或将错误转到0,然后告诉我们您遇到了什么错误(如果有)。此外,最好是发布整个代码,或者至少是其中包含变量声明的位。