excel 如何将二维报表整理为数据清单的方法
发布时间:2023-08-12 01:03:36
下面1图所示的二维报表数据,是我们实际工作中常见到的。这种报表看起来整齐清楚,就算是数据透视表,然而它并不是真正的数据透视表,无法像数据透视表一样随意进行行列转换并分析数据。因为下面这种表格中含有合并单元格,它也不是最原始的数据清单。为了能够进行各种各样的透视分析,我们需要将其转换为真正的数据清单,如2图所示。
这个问题有多种方法可以解决,无论采用哪种方法,首先必须将合并单元格取消,并填充为上一个单元格(行)或前一个单元格(列)的数据,具体转换方法可以参考前面的数据透视表系列教程。取消合并单元格并填充相应数据后,就可以进行数据表格转换了。
一个最简单的方法就是分别复制粘贴各列的数据到新的数据区域中,需要特别注意准确确定该数据对应的地区、城市、成色和产品。
如果数据量很大,可以使用公式或者VBA来解决。
下面是利用VBA解决上述问题的程序代码。假定取消合并单元格并填充相应数据后表格数据保存在工作表“取消合并单元格”中。下面是相关的代码:
Public Sub DataList()
Dim myArray As Variant
Dim n As Long, m As Integer, i As Long, k As Long
Dim ws0 As Worksheet
Dim wsNew As Worksheet
myArray = Array("地区", "城市", "成色", "产品", "销售数量")
Set ws0 = Worksheets("取消合并单元格")
n = ws0.Range("A65536").End(xlUp).Row - 2
m = ws0.Range("IV3").End(xlToLeft).Column - 2
ReDim District(1 To n) As String, Province(1 To n) As String
For i = 1 To n
District(i) = ws0.Range("A" & i + 2)
Province(i) = ws0.Range("B" & i + 2)
Next i
On Error Resume Next
Application.DisplayAlerts = False
Worksheets("数据清单").Delete
Application.DisplayAlerts = False
On Error GoTo 0
Set wsNew = Worksheets.Add
With wsNew
.Name = "数据清单"
.Range("A1:E1") = myArray
For j = 1 To m
For i = 1 To n
.Cells((j - 1) * n + i + 1, 1) = District(i)
.Cells((j - 1) * n + i + 1, 2) = Province(i)
.Cells((j - 1) * n + i + 1, 3) = ws0.Cells(1, j + 2)
.Cells((j - 1) * n + i + 1, 4) = ws0.Cells(2, j + 2)
.Cells((j - 1) * n + i + 1, 5) = ws0.Cells(i + 2, j + 2)
Next i
Next j
End With
Set ws0 = Nothing
Set wsNew = Nothing
End Sub
只要运行上面代码,就可以迅速的将报表数据转换为数据清单,并保存在一个新建的工作表“数据清单”中。如下图2所示。
现在就可以利用整理好的“数据清单”制作数据透视表了。下图3所示的就是利用整理好的数据清单制作的数据透视表的一种报表结构,利用数据透视表可以对数据进行各种统计分析,制作各种统计报表。


猜你喜欢
- 系统开机音乐怎么更改呢?如果你厌烦了微软默认的系统开机音乐的话,其实可以自己进行修改的,那么如何自定义电脑开机音乐呢?Win7系统开机音乐怎
- 在新版word中,为了让文字更显眼,有些小伙伴会在文字上添加颜色底纹。那么下面就由小编给大家分享下word设置文字底纹颜色的技巧,希望能帮助
- 一位用户反馈自己在Windows10正式版系统过程中,发现电脑C盘中有一个名为packages的文件夹,十分占用磁盘空间,那么package
- 美图秀秀怎么调整图片透明度?图片透明度,就是将一张图片慢慢虚化的过程,如果没有经过透明化的图片是一个“钢珠”(不透光),那被调成图片透明度的
- 如何Excel内置的VBA工具来获取工作表名称的两种方法?,具体操作如何进行?今天,小编就教大家在Excel中vba函数获取工作表名称的两种
- 更新了windows8.1后发现自己的串口线用不,我试了各种网上搜到usb转串口出错的方法但都没有解决,最后发现,在驱动程序里点属性里面有错
- 将文本设置为垂直显示。每个人都知道,默认情况下,文档中输入的文本是水平的,这在特殊情况下无法满足我们的需要。有很多方法可以将文本变成垂直的。
- 最近有Win8用户反映,电脑开机后出现提示“该站点安全证书的吊销信息不可用”,可用户此时并没有打开过网页,这让用户非常想不通。那么,Win8
- 在Photoshop中文字工具是比较简单的一个工具,但是快捷键和技巧特别多。比如调出字符面板的快捷键和调出段落面板的快捷键、调整字符间距,调
- 用户可以将Apple TV上的应用程序整理到应用程序文件夹中,就像在iPhone和iPad上一样。在本文中,小编将说明其工作方式以及如何重命
- 最近有用户反馈升级Windows 11 后有些软件界面、游戏聊天内容、记事本文档会出现乱码,此类问题可能是默认使用Unicode UTF-8
- 近期在民企工作的网友就遇到个一个难题,如何将对多个excle文件合并为一个excle表格?如何做,这个问题困扰着他,而这个问题是比较紧迫的,
- 我们在使用win10操作系统的时候,有的小伙伴对新的操作系统还不够了解。对于win10电脑梦幻西游怎么卸载的问题,小编觉得我们可以在电脑的应
- 在对Word文档进行排版时,经常会要求对同一个文档中的不同部分采用不同的版面设置,例如要设置不同的页面方向、页边距、页眉和页脚,或重新分栏排
- 今天凌晨,苹果发布了 iOS 14.8、watchOS 7.6.2、macOS 11.6 等系统。iOS 14.8 的发布,既让人意外,也在
- 格式工厂怎么将mkv格式转换为mp4?格式工厂这款软件很多人都在用,它支持格式之间的相互转换,是一款非常好用的格式转换器,那么,格式工厂要怎
- 电脑连接电视显示不全怎么办?想要在电视机上观看电视节目但是又没有喜欢看的好剧可怎么办?我们可以在电脑中下载或者直接播放视频然后将电脑连接到电
- PPT目录除了用数字去表现要点之外,还可以使用图标代替数字,而色块采用是上一篇文章封面页风格使用了圆形。【知识点】:PPT中图标怎么找半圆形
- 闪电PDF虚拟打印机是一款不错的打印软件,该软件支持任何windows程序文件打印成PDF文件,本文中介绍的是使用该软件将网页打印成PDF文
- 有信APP怎么发短信?有信APP是一款非常不错的免费电话软件,在有信APP中我们还可以发送短信,那么你知道要怎么发短信吗?下面就给大家分享有