有没有办法使用 VBA/Power Query 对 Excel 中的两个表执行交叉联接?

问题描述 投票:0回答:1

我目前有两个工作表:一个是公司项目的滚动列表,将经常添加到其中,另一个提供与每个项目相关的任务列表(大约 110 个任务)。我的理想状态是我们的管理员将一个新项目添加到项目表中,我想运行一个脚本或进程,将所有新项目(由 [项目 id] 表示)添加到主表中(每次运行时,它都会将新数据附加到记录的底部),并为每个任务创建一行,并将该任务放在相邻的列中。 [编辑] - 此过程需要自动化,可以通过计划刷新或通过记录新项目启动的按钮/触发器来实现。

项目表

项目编号 属性
PID1 XXXXX
PID2 XXXXX
PID3 XXXXX

任务表

检查站 任务
CP1 任务1
CP2 任务2
CP3 任务3

新表

项目编号 检查站 任务
PID1 CP1 任务1
PID1 CP2 任务2
PID1 CP3 任务3
PID2 CP1 任务1
PID2 CP2 任务2
PID2 CP3 任务3

我想运行 SQL 来完成此任务,因为这很容易完成,但我不知道如何在不使用 Power Automate 的情况下做到这一点。但是,我无法使用 PA,因为这些文件位于 SharePoint 上,并且需要与我拥有的许可证不同的许可证。

我尝试使用 Power Query,但由于我没有任何公共列,因此无法将正确的列填充到平面表中。我也尝试过 Power Automate,但遇到了许可问题。我已经考虑过使用 Access,但还没有采取任何行动。

excel powerquery cross-join
1个回答
0
投票

将两个表加载为查询。然后在其中添加一个自定义列,公式只需引用另一个查询(例如,如果您在项目中,请使用 =Tasks 作为公式)。这将为每一行创建一个表。然后只需使用列顶部的双头箭头展开表格即可。

© www.soinside.com 2019 - 2024. All rights reserved.