You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何实现Excel工作簿间每日机器数据的动态导入?

跨工作簿动态导入当日机器数据的解决方案

方法一:公式法(实时匹配,需源工作簿打开)

假设第一个工作簿名为每日机器数据.xlsx,每日工作表命名为YYYY-MM-DD格式(如2024-05-20),第二个工作簿中每个机器工作表的A列为机器名称,要导入对应当日的Number1/Number2/Number3:

  1. 在第二个工作簿的目标单元格(如B2)输入公式,匹配Machine 1的当日Number1:
    =XLOOKUP($A2,"[每日机器数据.xlsx]"&TEXT(TODAY(),"YYYY-MM-DD")&"!$A:$A","[每日机器数据.xlsx]"&TEXT(TODAY(),"YYYY-MM-DD")&"!$B:$B","无数据")
    
  2. 复制公式到C2、D2,分别将公式中的$B:$B替换为$C:$C、$D:$D,即可获取Number2和Number3。
  3. 若源工作簿的工作表命名格式不同(如5月20日),修改TEXT(TODAY(),"YYYY-MM-DD")为对应格式,比如TEXT(TODAY(),"M月D日")。

注意:源工作簿必须处于打开状态,公式才会自动刷新;若需离线更新,可手动刷新或改用Power Query。

方法二:Power Query法(自动批量导入,支持离线刷新)

适合不需要手动维护公式,批量处理所有机器数据的场景:

  1. 在第二个工作簿中,点击「数据」选项卡→「获取数据」→「从文件」→「从工作簿」,选择第一个工作簿。
  2. 在弹出的导航器中,勾选「选择多项」,选中所有每日工作表,点击「转换数据」进入Power Query编辑器。
  3. 在编辑器中:
    • 点击「添加列」→「自定义列」,输入公式提取工作表日期:=Date.From([Name])(若工作表名是文本日期,需调整格式匹配)
    • 添加筛选器,筛选自定义列等于=Date.From(DateTime.LocalNow())(当日日期)
    • 点击「合并查询」或「分组依据」,按机器名称整理数据
  4. 将处理后的数据加载到对应机器的工作表,设置刷新选项:右键查询→「属性」→勾选「打开文件时刷新数据」,或设置定时刷新。

关键注意事项

  • 源工作簿的每日工作表命名规则必须完全一致,否则公式或Power Query会无法匹配
  • 若机器名称存在重复,需在公式或Power Query中明确匹配逻辑(如取第一条记录、汇总数值等)
  • Power Query支持离线刷新,无需保持源工作簿打开

内容的提问来源于stack exchange,提问作者James Johnson

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.04 03:00:06