非VBA实现:将Worksheet A动态表t1的name列同步到Worksheet B的t2表
解决办法
以下是几种无需VBA的可行方案,适配不同Excel版本和需求:
方案一:动态数组函数(Excel 365/2021及以上)
- 在Worksheet B的t2表格
name列的首个单元格中输入公式:=t1[name] - 公式会自动溢出显示t1中所有
name列的数据,当t1通过Power Query新增条目后,只需刷新数据,t2的内容会自动同步更新,无需手动调整范围。 - 若t2是已创建的表格,可先让公式生成完整的溢出数据,再选中溢出区域按
Ctrl+T转换为表格,后续更新会自动扩展。
方案二:INDEX+IFERROR兼容旧版Excel
- 在Worksheet B的t2表格
name列首个单元格输入:=IFERROR(INDEX(t1[name],ROW(A1)),"") - 下拉填充公式至足够多的行(超过t1当前条目数),当t1新增条目后,刷新Power Query,继续下拉公式到新行即可获取新增数据。
IFERROR会将超出t1范围的单元格显示为空,避免出现错误值。
方案三:用Power Query直接同步数据
- 打开Power Query编辑器,选择从Worksheet A的
t1表格加载数据,仅保留name列。 - 将处理后的数据集加载到Worksheet B的t2位置,设置为加载到表格并保留连接。后续每次刷新Power Query时,t2会自动同步t1的
name列所有数据,包括新增条目,无需手动操作公式。
内容的提问来源于stack exchange,提问作者user20381296
相关产品推荐
相关产品推荐

