繁体   English   中英

Excel使用变量创建数据透视表

[英]Excel to create pivot table using variables

我有一本有10张纸的工作簿。 我试图通过宏自动在每个工作表上创建数据透视表。 我记录了第一张时间表的宏

以下是脚本的一部分:

ActiveWorkbook.PivotCaches.Create(SourceType:=xlExternal, SourceData:= _        
ActiveWorkbook.Connections("WorksheetConnection_Timetables!$A$1:$D$382"), _
Version:=xlPivotTableVersion15).CreatePivotTable TableDestination:= _
"Timetables!R1C5", TableName:="PivotTable1", DefaultVersion:= _
xlPivotTableVersion15

由于每张纸上要使用的每个数据范围都不同。 我试图为该范围创建一个变量。

Dim ws as Worksheet
Set ws = Activesheet

Dim wr As Range
Set wr = Range("A1", Range("D1").End(xlDown))

问题是如何用脚本上的变量替换范围时间表!$ A $ 1:$ D $ 382?

您不需要范围,需要文本字符串作为数据透视表源数据参数的参数。

Dim lastrow As Long
Dim ws As Worksheet
Dim TheRange As String

Set ws = ThisWorkbook.Sheets("WorksheetConnection_Timetables")

lastrow = ws.Cells(Rows.Count, 1).End(xlUp).Row
TheRange = "WorksheetConnection_Timetables!$A$1:$D$" & lastrow

然后,您可以将其用作数据源参数:

..._
ActiveWorkbook.Connections(TheRange), _
... 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM