如何在Google Sheets中无需额外列将文本手机号转为数值格式
Google Sheets 粘贴手机号自动转数值格式实现方案
操作步骤
- 打开目标Google表格,点击顶部菜单栏「扩展程序」>「Apps 脚本」,进入脚本编辑器
- 清空编辑器内默认的示例代码,粘贴如下脚本:
function onEdit(e) { // 配置需要自动转换的列:A列对应索引1、B列对应索引2,可按需增减 const targetColumns = [1, 2]; const editRange = e.range; // 非目标列编辑直接跳过 if (!targetColumns.includes(editRange.getColumn())) return; const cellContent = editRange.getValue(); // 空单元格跳过处理 if (!cellContent) return; // 逻辑和你现有公式一致:去掉横杠后转数值 const convertedValue = Number(String(cellContent).replace(/-/g, '')); // 结果写回原单元格,设置为纯数值格式避免科学计数 editRange.setValue(convertedValue).setNumberFormat('0'); }
- 点击编辑器顶部的保存按钮,给项目任意命名(比如「手机号格式转换工具」)
- 首次保存需要完成授权,按照页面提示操作即可,权限申请为脚本修改表格内容的正常请求,可放心授权
- 回到表格页面,后续粘贴带横杠的手机号到A、B列时,会自动转换为无横杠的数值格式,无需额外辅助列
注意事项
- 历史已经存在的带格式手机号,可选中对应单元格区域,批量剪切后重新粘贴,即可触发批量转换
- 需要新增转换列的话,修改脚本中
targetColumns数组的数值即可,比如要支持C列转换就改为[1,2,3]
内容的提问来源于stack exchange,提问作者Borg
相关产品推荐
相关产品推荐

