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

如何将Excel源数据转换为Oracle Fusion日历事件覆盖导入格式?

解决Oracle Fusion覆盖范围导入的Excel格式转换问题

针对你需要将源数据(每行事件+国家x标记)转换为Oracle要求的「每行对应一个覆盖国家」格式,使用Excel 365的动态数组函数可以一步实现,以下是具体方案:

前提假设

源数据结构:

  • A列:Short Code2
  • B列:Name2
  • C列及以后:各国家名称作为表头,对应单元格用x标记该事件覆盖此国家
  • 数据区域包含表头(第一行是列名)

通用动态数组公式

在空白单元格(如G1)输入以下公式,按回车后自动生成符合要求的完整导入表:

=LET(
    源数据, A1:Z100,
    事件列, TAKE(源数据,,2),
    国家列, DROP(源数据,,2),
    国家名称, TAKE(国家列,1),
    覆盖标记, DROP(国家列,1),
    展开事件, TOCOL(INDEX(事件列, SEQUENCE(ROWS(覆盖标记)), {1,2}),,1),
    展开国家, TOCOL(IF(覆盖标记="x",国家名称,""),,1),
    结果表头, {"Short Code2","Name2","Country","Coverage"},
    VSTACK(结果表头, HSTACK(INDEX(展开事件,SEQUENCE(ROWS(展开国家)),1), INDEX(展开事件,SEQUENCE(ROWS(展开国家)),2), 展开国家, "I"))
)

公式说明

  1. LET:定义变量简化公式,避免重复引用
  2. TAKE/DROP:快速拆分源数据为「事件信息列」和「国家标记列」,无需手动指定列数
  3. TOCOL:将符合条件的国家标记展开为单列,同时把对应事件信息重复对应次数
  4. HSTACK/VSTACK:合并事件列、国家列和固定值I,并添加表头

注意事项

  • 若源数据中标记为大写X,需将公式中的"x"改为"X"
  • 源数据区域A1:Z100可根据实际数据范围调整,Excel会自动忽略空行
  • 生成结果为动态数组,若需转为静态数据,选中结果区域→右键复制→右键「粘贴值」

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 00:10:36