乔山办公网我们一直在努力
您的位置:乔山办公网 > office365 > excel 使用VB创建数据透视表(pivottable)问...-office 2013数据透视表,office数据透

excel 使用VB创建数据透视表(pivottable)问...-office 2013数据透视表,office数据透

作者:乔山办公网日期:

返回目录:office365


 "数据透视表"  英文是 Pivot Table ,直接翻译是轴向旋转表,可以理解为平时说的简单报表。

1.假设有如下的Excel数据表:

2.可以看到销售员和产品列有许多重复的字段,那么如果想得到两个统计信息:每名销售员每种产品的销售额情况和每种产品的销售额,应该怎么使用“透视表”得到。

3.红色区域为要分析的数据所在区域,即上面的销售数据,蓝色区域为存放“透视表”及统计报表的区域。最好在一个新的SHEET中。

4.点击透视表区域,出现如下图,如果不小心关了,点击右键“Show filed list”:

5.把想要的字段托到图示位置,显然统一销售员每种产品的销售情况,希望的纵轴是“销售员”,横轴为“产品”,统计信息为求和“销售数量”。分别对应为Row Labels, Column Labels, Values. 设置完成后会出现如下透视表:

6.这样就完成了的第一个报表。

那么每种产品的销售情况怎么做? 只要在图的界面中 把“产品名称”拖拽到 Row labels, "销售数量"拖拽到Values 即可。读者自行实践即可。

 7.注意在图的界面中,可以使用拖拽和勾选CheckBox实现对字段配置和删除等操作。只要心中有了报表的设计样子,按照设想,配置字段就可以了。

8.注意一点,源数据更新后,透视表数据并不会自动更新,需要右键->Refresh 一下。还可以在每次打开数据透视表时自动更新其中e79fa5e98193e78988e69d83336的数据。右键单击任意单元格 “Pivot Table Option” > "Data" .选中 " Refersh the data when open file".

9.另外,数据统计默认是求和,如果是求最大值等等,右键单击任意单元格->"Value Filed Setting" ,可以设置其他统计方式,如下图:



粘贴一段以前写的代码
供参考
Dim DataRng As Range '定义一个数据范围,用来储存生成数据透视表的数据
Dim MyPivot As Worksheet '定义一个工作表,存放e79fa5e98193e78988e69d83362数据透视表"
Dim pt As PivotTable '定义一个数据透视表,用来储存数据透视表对象”
Dim MyTable As Worksheet '定义一个工作表,做为汇总表
Dim ptcache As PivotCache

Set DataRng = Range("A1:D" & zuidazhi)
'
Set ptcache = ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:=DataRng)
Sheets.Add
Sheets("Sheet1").Select
Set pt = ptcache.CreatePivotTable(tabledestination:=Sheets("Sheet1").Range("b1"), TableName:="pivottable1")

With ActiveSheet.PivotTables("pivottable1").PivotFields("采样时间")
.Orientation = xlRowField
.Position = 1
End With
With ActiveSheet.PivotTables("pivottable1").PivotFields("样品名称")
.Orientation = xlRowField
.Position = 2
End With
With ActiveSheet.PivotTables("pivottable1").PivotFields("分项")
.Orientation = xlRowField
.Position = 3
End With
ActiveSheet.PivotTables("pivottable1").AddDataField ActiveSheet.PivotTables("pivottable1" _
).PivotFields("值"), "计数项:值", xlCount
With ActiveSheet.PivotTables("pivottable1").PivotFields("计数项:值")
.Caption = "平均值项:值"
.Function = xlAverage
End With
事先设定好范围 这个范围的列和行通过参数来判断
Set DataRng = Range("A1:D" & zuidazhi)

Set ptcache = ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:=DataRng)
Sheets.Add
Sheets("Sheet1").Select
Set pt = ptcache.CreatePivotTable(tabledestination:=Sheets("Sheet1").Range("b1"), TableName:="pivottable1")
With ActiveSheet.PivotTables("pivottable1").PivotFields("采样时间")
.Orientation = xlRowField
.Position = 1
End With

单击数据源 插入透视表 将hair拽到行标签,eye拽到列标签,再拽任意一个到数据处即可.

相关阅读

关键词不能为空
极力推荐
  • 关于<em>office2011</em> for <em>Mac</em&g

  • 话说我直接下的中文版,有破解包的,亲office for mac 2011更改语言设置" src="/uploads/tu/379.jpg" style="width: 400px; height: 267px;" />Microsoft Office Mac 中文来版源:zhidaohttp://

ppt怎么做_excel表格制作_office365_word文档_365办公网