excel - 如何基于 15 个字段连接 150 万行数据
问题描述
我有一个 2019 年销售数据的事实表,其中包含大约 150 万行数据。我需要将 2019 年的销售额与 2018 年的销售额进行比较。2018 年的销售事实表也有大约 150 万行数据。
每个事实表都有 15 个相同的列,其中包括日期、类别、部门、位置等字段。
日期 | 字段 1 | 字段 2.. | …字段 15 | 销售量 |
---|---|---|---|---|
01.01.18 | 美国广播公司 | XYZ | A12 | 100 |
01.02.18 | A B C D | XXY | A13 | 200 |
01.03.18 | ABB | XYY | A14 | 300 |
01.04.18 | ACC | ZXX | A15 | 400 |
日期 | 字段 1 | 字段 2.. | …字段 15 | 销售量 |
---|---|---|---|---|
19 年 1 月 1 日 | 美国广播公司 | XYZ | A12 | 110 |
01.02.19 | A B C D | XXY | A13 | 210 |
01.03.19 | ABB | XYY | A14 | 310 |
01.04.19 | ACC | ZXX | A15 | 410 |
我需要将 2018 年的销售额和 2019 年的销售额放在相邻的两列中。
我已经通过左连接(匹配正确映射所需的最小字段数量)尝试了这个,但后来我的电脑内存不足。我也尝试通过 power pivot 执行此操作,但我的 PC 在尝试将第二个事实表加载到数据模型时也耗尽了能量。
如何在彼此相邻的列中拥有正确映射的 2018 年销售额和 2019 年销售额?
日期 '18 | 日期 '19 | 字段 1 | 字段 2.. | …字段 15 | 2018 年销售额 | 2019 年销售额 |
---|---|---|---|---|---|---|
01.01.18 | 19 年 1 月 1 日 | 美国广播公司 | XYZ | A12 | 100 | 110 |
01.02.18 | 01.02.19 | A B C D | XXY | A13 | 200 | 210 |
01.03.18 | 01.03.19 | ABB | XYY | A14 | 300 | 310 |
01.04.18 | 01.04.19 | ACC | ZXX | A15 | 400 | 410 |
解决方案
假设 csv 数据通过数据 > 获取外部 > 从文本导入到 Sheet2(2018) 和 Sheet3(2019)。把它放在工作表 A1 中:
=OFFSET(INDIRECT(CHOOSE(2-MOD(COLUMN(),2),"Sheet2","Sheet3")&"!A1",TRUE),ROW()-1,INT(COLUMN()/2+0.5)-1)
并向右+向下拖动。
想法:使用column()
withmod()
来“驱动”offset
单元格选择。choose()
进行工作表选择。
请分享它是否有效/无效。( :
推荐阅读
- reactjs - 如何为 React App 应用 antd 深色主题?
- android - Flutter - 拉动以刷新网页视图?
- r - 将矩阵与R中的向量等同是什么意思
- java - 如何管理数组中的概率?
- java - 如何在我的 React JHipster 应用程序中添加 fontawesome 图标?
- mysql - 您能否解释使用 Composite MySQL INDEX 进行多个 INNER JOIN 的方面?
- php - 包括'count.html.php'
- angular - 有没有办法访问 templateRef 中的内容
- wordpress - 如何使用 WPBakery 的 vc_map() 动态显示其他参数
- templates - 如何防止 MediaWiki 中#if 条件内的图像“隐藏”链接