使用vba创建数据透视表A,B,C,D,E是行,F是求和项,并输出到sheet1
时间: 2023-06-09 08:08:39 浏览: 120
Excel-Text_In_Pivot
好的,您想要使用 VBA 来创建数据透视表并将结果输出到 Sheet1 中,对吧?那么我们可以使用下面的代码来完成这个任务:
```
Sub CreatePivotTable()
Dim DataRange As Range
Dim PivotTableRange As Range
Dim PivotTable As PivotTable
' 设置数据范围,这里使用 A1:E100 作为示例范围
Set DataRange = Range("A1:E100")
' 创建透视表
Set PivotTableRange = Range("G1")
Set PivotTable = ActiveSheet.PivotTableWizard(SourceType:=xlDatabase, SourceData:=DataRange, _
TableDestination:=PivotTableRange, TableName:="MyPivotTable")
' 设置行和求和项
PivotTable.PivotFields("A").Orientation = xlRowField
PivotTable.PivotFields("B").Orientation = xlRowField
PivotTable.PivotFields("C").Orientation = xlRowField
PivotTable.PivotFields("D").Orientation = xlRowField
PivotTable.PivotFields("E").Orientation = xlRowField
PivotTable.AddDataField PivotTable.PivotFields("F"), "Sum of F", xlSum
' 输出结果到 Sheet1
PivotTable.TableRange2.Copy Destination:=Worksheets("Sheet1").Range("A1")
' 删除透视表
PivotTable.TableRange1.Delete
End Sub
```
这段代码首先设置了数据范围,然后使用 `PivotTableWizard` 方法创建了一个透视表,并将其放置在 G1 单元格中。接着,它设置了行和求和项,并最终将透视表复制到 Sheet1 中并删除了原始表格。注意,在使用这个代码之前,您需要将数据范围修改为您实际使用的范围。
阅读全文