我有一本包含10个工作表的工作簿。我记录了一个用于从第一个工作表创建数据透视表的宏。
当我在另一个工作表中运行宏时,它只是创建了包含第一个工作表中数据的相同数据透视表,即使我已经在脚本中用ActiveSheet替换了工作表名称。
我仔细检查了脚本,但我找不到为什么它总是产生相同的数据透视表。
Sub Macro3()
'
' Macro3 Macro
'
Dim lastrow As Long
Dim TheRange As String
'
lastrow = ActiveSheet.Cells(Rows.Count, "A").End(xlUp).Row
TheRange = "WorksheetConnection_ActiveSheet!$A$1:$D$" & lastrow
'
ActiveWorkbook.PivotCaches.Create(SourceType:=xlExternal, SourceData:= _
ActiveWorkbook.Connections("TheRange"), _
Version:=xlPivotTableVersion15).CreatePivotTable TableDestination:= _
ActiveSheet.Range("E1"), TableName:="PivotTable1", DefaultVersion:= _
xlPivotTableVersion15
Cells(1, 5).Select
ActiveSheet.PivotTables("PivotTable1").CubeFields.GetMeasure _
"[Range].[Store_CODE]", xlSum, "Sum of Store_CODE"
ActiveSheet.PivotTables("PivotTable1").AddDataField ActiveSheet.PivotTables(
_
"PivotTable1").CubeFields("[Measures].[Sum of Store_CODE]"), _
"Sum of Store_CODE"
With ActiveSheet.PivotTables("PivotTable1").CubeFields("[Range].[Date]")
.Orientation = xlRowField
.Position = 1
End With
With ActiveSheet.PivotTables("PivotTable1").PivotFields( _
"[Measures].[Sum of Store_CODE]")
.Caption = "Distinct Count of Store_CODE"
.Function = xlDistinctCount
End With
End Sub
enter code here