admin 管理员组文章数量: 1086019
2024年1月23日发(作者:web前端开发软件工程师招聘)
数据透视表常用vba代码
1. 创建数据透视表:
Sub CreatePivotTable()
'指定数据范围
Dim ws As Worksheet
Set ws = Worksheets("Sheet1") '更改为需要的工作表名称
Dim lastRow As Long, lastCol As Long
lastRow = (, 1).End(xlUp).Row
lastCol = (1, ).End(xlToLeft).Column
Dim dataRange As Range
Set dataRange = (Cells(1, 1), Cells(lastRow, lastCol))
'指定数据透视表位置
Dim ptSheet As Worksheet
Set ptSheet = '可以更改为已有工作表名
= "PivotTable"
("A3").Select
'指定要透视的字段
Dim pt As PivotTable
Set pt = ableWizard( _
SourceType:=xlDatabase, _
SourceData:=dataRange, _
TableDestination:=("A3"), _
TableName:="PivotTable", _
RowGrand:=True, _
ColumnGrand:=True, _
SaveData:=True, _
HasAutoFormat:=True, _
AutoPage:=xlAuto, _
Reserved:=True)
'设置透视表字段
With ields("年份") '更改为需要的字段
.Orientation = xlRowField
.Position = 1
End With
With ields("月份") '更改为需要的字段
.Orientation = xlRowField
.Position = 2
End With
With ields("城市") '更改为需要的字段
.Orientation = xlColumnField
.Position = 1
End With
With ields("销售额") '更改为需要的字段
.Orientation = xlDataField
.Function = xlSum
.NumberFormat = "#,##0.00"
End With
End Sub
2. 控制数据透视表:
Sub ControlPivotTable()
'指定数据透视表
Dim ptSheet As Worksheet
Set ptSheet = Worksheets("PivotTable") '更改为需要的工作表名称
Dim pt As PivotTable
Set pt = ables("PivotTable") '更改为数据透视表名称
'选择数据透视表项
Dim ptItem As PivotItem
For Each ptItem In ields("城市").PivotItems
If = "北京" Then '更改为需要的城市名称
e = True
Else
e = False
End If
Next ptItem
'获取数据透视表数据
Dim ptData As Variant
ptData =
'清空数据透视表数据
ontents
'设置数据透视表数据
(UBound(ptData, 1), UBound(ptData,
2)).Value = ptData
'排列数据透视表
hTable
End Sub
3. 更新数据透视表:
Sub UpdatePivotTable()
'指定数据透视表
Dim ptSheet As Worksheet
Set ptSheet = Worksheets("PivotTable") '更改为需要的工作表名称
Dim pt As PivotTable
Set pt = ables("PivotTable") '更改为数据透视表名称
'指定数据范围
Dim ws As Worksheet
Set ws = Worksheets("Sheet1") '更改为需要的工作表名称
Dim lastRow As Long, lastCol As Long
lastRow = (, 1).End(xlUp).Row
lastCol = (1, ).End(xlToLeft).Column
Dim dataRange As Range
Set dataRange = (Cells(1, 1), Cells(lastRow, lastCol))
'更新数据透视表数据
PivotCache ( _
SourceType:=xlDatabase, _
SourceData:=dataRange)
'排列数据透视表
hTable
End Sub
4. 删除数据透视表:
Sub DeletePivotTable()
'指定数据透视表
Dim ptSheet As Worksheet
Set ptSheet = Worksheets("PivotTable") '更改为需要的工作表名称
ables("PivotTable").Delete '更改为数据透视表名称
'删除工作表
yAlerts = False
yAlerts = True
End Sub
以上是一些常用的数据透视表VBA代码。
版权声明:本文标题:数据透视表常用vba代码 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://roclinux.cn/p/1705986283a496770.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论