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

如何将含多组坐标的单元格拆分至仅包含Latitude和Longitude的两列

处理多组坐标的拆分与汇总(Google Sheets 公式方案)

我来帮你搞定这个多组坐标的拆分汇总问题,用Google Sheets的原生公式就能完美解决,不用复杂脚本~

核心思路

先把单元格里的多组坐标按分隔符(; )拆分成独立的坐标组,再把每个坐标组拆分成纬度和经度,最后分别将所有纬度、经度用逗号拼接成字符串。

具体公式

假设你的原始坐标数据在A列,我们可以在B列(纬度汇总)和C列(经度汇总)分别使用以下公式:

B列(纬度汇总)公式

=ARRAYFORMULA(IF(ROW(A:A)=1,"LAT",IF(ISBLANK(A:A),"",TEXTJOIN(",",TRUE,INDEX(SPLIT(FLATTEN(SPLIT(A:A,"; ")),","),,1)))))

C列(经度汇总)公式

=ARRAYFORMULA(IF(ROW(A:A)=1,"LONG",IF(ISBLANK(A:A),"",TEXTJOIN(",",TRUE,INDEX(SPLIT(FLATTEN(SPLIT(A:A,"; ")),","),,2)))))

公式拆解(帮你理解怎么工作的)

咱们一步步看每个函数的作用:

  • SPLIT(A:A,"; "):把A列每个单元格里的多组坐标,按; (分号+空格)拆分成单独的坐标组(比如把01.00000, 02.00000; 03.00000, 04.00000拆成两个独立的坐标字符串)
  • FLATTEN():把拆分后的多行多列数据转成单列,方便后续统一处理
  • SPLIT(...,","):把每个坐标组按逗号拆分成纬度和经度两列
  • INDEX(...,1)/INDEX(...,2):分别提取每一组的第1列(纬度)和第2列(经度)
  • TEXTJOIN(",",TRUE,...):把所有提取到的纬度/经度用逗号连接,TRUE参数会自动忽略空值,避免出现多余的逗号
  • ARRAYFORMULA:让公式自动应用到整列,加上表头判断和空单元格的处理逻辑

适配调整

如果你的坐标分隔符只有分号没有空格(比如01.00000,02.00000;03.00000,04.00000),只需要把公式里的SPLIT(A:A,"; ")改成SPLIT(A:A,";")就行。

而且这个方案完全兼容单组坐标的情况,当A列只有一组坐标时,公式会自动提取单个纬度和经度,和你之前用的单组公式效果一致~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.29 11:24:24