如何自动为Google表单回复的手机号添加+966前缀?
解决Google表单手机号自动格式化问题(去首0加+966前缀)
直接在表格列中写公式的问题在于,Google表单新增的回复行不会自动继承公式,得用Google Apps Script做触发式处理,步骤如下:
步骤1:打开表格的脚本编辑器
- 打开关联表单的Google表格
- 点击顶部菜单栏「扩展程序」>「Apps 脚本」
步骤2:编写格式化脚本
替换编辑器里的默认代码为以下内容:
function formatPhoneNumber(e) { const range = e.range; const row = range.getRow(); const col = range.getColumn(); // 这里的2代表手机号所在列(A=1,B=2,按你的实际列调整) const targetCol = 2; if (col !== targetCol) return; const originalPhone = range.getValue(); if (typeof originalPhone !== 'string') return; // 去掉开头的0,替换为+966 let formattedPhone = originalPhone.replace(/^0/, '+966'); // 可选:过滤掉非数字和+的多余字符 formattedPhone = formattedPhone.replace(/[^0-9+]/g, ''); range.setValue(formattedPhone); }
步骤3:设置触发条件
- 点击脚本编辑器左侧的「触发器」图标(闹钟样式)
- 点击「添加触发器」:
- 选择运行函数:
formatPhoneNumber - 事件来源选「从电子表格」
- 事件类型选「当表单提交时」
- 按提示完成权限授权即可
- 选择运行函数:
额外提示
- 记得把
targetCol改成你实际存储手机号的列号 - 测试时提交一次表单,就能看到手机号自动格式化为
+966xxxxxxxxx的样式
内容的提问来源于stack exchange,提问作者Vitamin Palace
相关产品推荐
相关产品推荐

