作者:绿色风
分类:
时间:2022-08-18
浏览:119
楼主 水星钓鱼 |
Q:一个文件夹下有很多相同格式的工作簿,现在想将每个文件做成以下格式的数据透视表,如何实现? A: 用以下代码可以实现: 新建一个空白工作簿,在任一模块中插入以下代码,运行之。
- Sub xyf()
- Dim oWok As Workbook
- Dim oRange As Range
- Dim oPivotCache As PivotCache
- Dim oPivotTable As PivotTable
- Dim i As Integer
- Dim sFilePath As String
- Application.DisplayAlerts = False
- sFilePath = Application.GetOpenFilename("")
- sFilePath = Left(sFilePath, InStr(1, sFilePath, "\out"))
- MsgBox sFilePath
- For i = 1 To 10
- Set oWok = Workbooks.Open(sFilePath & "out_" & i & ".xls")
- With oWok
- .Application.Visible = False
- Set oRange = .Worksheets("out" & i).Range("a1").CurrentRegion
- Set oPivotCache = .PivotCaches.Create(SourceType:=xlDatabase, _
- SourceData:=oRange)
- Set oPivotTable = oPivotCache.CreatePivotTable("")
- With oPivotTable
- .PivotFields("a_" & i).Orientation = xlRowField
- .PivotFields("a" & i).Orientation = xlColumnField
- .PivotFields("count").Orientation = xlDataField
- End With
- .Save
- .Close
- End With
- Next i
- Application.Visible = True
- Application.DisplayAlerts = True
- End Sub
|
2楼 亡者天下 |
水星版主的VBA在透视表中的应用真的是非常灵活哦! |
免责声明
有感于原ExcelTip.Net留存知识的价值及部分知识具有的时间限定性因素,
经与ExcelTip.Net站长Apolloh商议并征得其同意,
现将原属ExcelTip.Net的知识帖采集资料于本站点进行展示,
供有需要的人士查询使用,也慰缅曾经的论坛时代。
所示各个帖子的原作者如对版权有异议,
可与本人沟通提出,或于本站点留言,我们会尽快处理。
在此,感谢ExcelTip.Net站长Apolloh的支持,感谢本站点所有人**绿色风(QQ:79664738)**的支持与奉献,特此鸣谢!
------本人网名**KevinChengCW(QQ:1210618015)**原ExcelTip.Net总版主之一