ExcelTip.Net留存知识帖 ---【注:附件之前被网盘供应商清空后,现已修复-现已修复-现已修复为本地下载!】
现在位置:首页 > 我的酷贴 > 数据透视表 > 如何实现数据透视表数据源可随行列数据增减而自动扩展收缩呢?

如何实现数据透视表数据源可随行列数据增减而自动扩展收缩呢?

作者:绿色风 分类: 时间:2022-08-18 浏览:192
楼主
0Mouse
Q:如何实现数据透视表数据源可随行列数据增减而自动扩展收缩呢?
示例问题:
“数据源”工作表的A1:H44区域存放着销售记录,基于此区域数据构建的数据透视表如何在销售记录增加或减少后也能更新呢?
部分数据截图:

 
A:可以将定义的名称或者用SQL查询得到的数据作为数据源构建数据透视表,也可以先将区域数据转化成表,再以表为数据源构建数据透视表。

方法一:定义名称法
操作步骤如下:
1. 打开文档后,单击“数据源”工作表的A1单元格,按下Ctrl+F3,在弹出“名称管理器”中单击“新建”按钮,在弹出的“新建名称”对话框中,“名称”输入框内输入“Source”(可自定义,图1),引用位置输入以下公式:
图1:新建名称

 
  1. =OFFSET($A$1,,,COUNTA($A:$A),COUNTA($1:$1))
依次单击“确定”-“关闭”按钮。
2. 单击“插入”选项卡“表格”组的“数据透视表”按钮,在弹出的“创建数据透视表”对话框中,在“表/区域”右侧的输入框内输入“Source”,并单击下方的“新工作表”选项,再单击“确定”。
3. 根据实际需求添加相应的字段到相应的区域,当数据源有行列数据增减后,右键单击数据透视表,选择“刷新”命令即可。

方法二:SQL查询法
操作步骤如下: 单击“数据”选项卡“获取外部数据”组的“现有连接”按钮,在弹出的“现有连接”对话框中单击右下角的“浏览更多”按钮,在“选取数据源”窗口中找到本工作簿,单击选取,再单击“打开”按钮,在“选择表格”对话框中选择“数据源$”(图2),再单击“确定”按钮,在“导入数据”对话框中,选择“数据透视表”和“新工作表”(图3),再单击左下角“属性”按钮,在“连接属性”对话框中单击“定义”选项卡,在“命令文本”输入框内以下查询语句(图4):
  1. select * from [数据源$]
再连续单击两次“确定”按钮,根据实际需求添加相应的字段到相应的区域,当数据源有行列数据增减后,右键单击数据透视表,选择“刷新”命令即可。
图2:选择表格

 
图3:导入数据

 
图4:连接属性

 

方法三:创建列表法
操作步骤如下:
1. 打开文档后,单击“数据源”工作表的A1单元格,再单击“插入”选项卡“表格”组的“表格”按钮,在弹出的“创建表”对话框中直接单击“确定”按钮。
2. 此时自动选取整个表并激活“设计”选项卡,单击“工具”组的“通过数据透视表汇总”按钮,在弹出的“创建数据透视表”对话框中,在“表/区域”右侧的输入框内自动生成“表1”字样,选择下方的“新工作表”选项,再单击“确定”。
3. 根据实际需求添加相应的字段到相应的区域,当数据源有行列数据增减后,右键单击数据透视表,选择“刷新”命令即可。
附件:
实现数据透视表数据源可随行列数据增减而自动扩展收缩.rar
2楼
亡者天下
在excel2007及以上版本列表发也可以实现动态数据源
透视表自动更新
3楼
wise
使用公式的那种需要注意不要删除A1单元格。
使用列表其实是定义了一个可扩展的名称

免责声明

有感于原ExcelTip.Net留存知识的价值及部分知识具有的时间限定性因素, 经与ExcelTip.Net站长Apolloh商议并征得其同意, 现将原属ExcelTip.Net的知识帖采集资料于本站点进行展示, 供有需要的人士查询使用,也慰缅曾经的论坛时代。 所示各个帖子的原作者如对版权有异议, 可与本人沟通提出,或于本站点留言,我们会尽快处理。 在此,感谢ExcelTip.Net站长Apolloh的支持,感谢本站点所有人**绿色风(QQ:79664738)**的支持与奉献,特此鸣谢!
------本人网名**KevinChengCW(QQ:1210618015)**原ExcelTip.Net总版主之一

评论列表
sitemap