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

如何提取节点弧矩阵中存在的弧的坐标列表?

解决节点弧矩阵转弧列表的问题

方法1:Excel公式法(适配2019/365版本)

假设你的矩阵结构为:

  • A列(A2:A10)是起始节点(如R01、R02)
  • 第一行(B1:J1)是目标节点(如R01、R02)
  • B2:J10是带数值的弧记录区域

单个单元格合并所有弧

在空白单元格(如L2)输入公式,Excel 365直接回车,旧版本按Ctrl+Shift+Enter执行数组运算:

=TEXTJOIN(", ", TRUE, IF(B2:J10<>"", "("&$A2:$A10&","&B$1:J$1&")", ""))

下拉公式可生成每一行节点对应的所有弧。

自动溢出单独的弧列表(仅Excel 365)

用动态数组公式直接生成所有弧的独立列表:

=LET(
    rows, A2:A10,
    cols, B1:J1,
    mat, B2:J10,
    all_arcs, IF(mat<>"", "("&TOROW(rows,1)&","&TOCOL(cols,1)&")", ""),
    FILTER(TOCOL(all_arcs,1), TOCOL(all_arcs,1)<>"")
)

方法2:Power Query批量提取(适合大数据量)

  1. 选中整个矩阵区域(含行/列标题),点击「数据」→「从表格/区域」(勾选「我的表格有标题」)。
  2. 在Power Query编辑器中,点击「转换」→「逆透视列」→「逆透视其他列」,生成包含行节点、目标节点、数值的三列数据。
  3. 添加自定义列,公式为:"(" & [你的起始节点列名] & "," & [Attribute] & ")"。
  4. 筛选掉Value列为空的行,删除冗余列,只保留自定义的弧列。
  5. 点击「关闭并上载」,即可得到完整的弧列表。

关于IF+CONCATENATE失效的原因

  • CONCATENATE不支持数组运算,只能拼接单个单元格,无法批量遍历矩阵区域。
  • 普通IF函数仅能判断单个单元格,未启用数组运算时无法批量识别所有带数值的单元格。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.25 14:25:06