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

如何从全名获取邮箱?Google Sheet批量处理人名的脚本方案

嘿,这个批量获取邮箱的需求我之前帮团队解决过,给你两个在Google Sheets里能用的靠谱方案,看你情况选就行!

方案1:基于统一邮箱命名规则批量生成(适合有固定命名规范的团队)

如果你们公司的邮箱有统一的命名逻辑(比如名.姓@公司域名.com、姓全拼@公司域名.com这种),写个自定义函数就能一秒批量生成,步骤超简单:

  1. 打开你的Google Sheet,点顶部菜单栏的扩展程序 > Apps Script,进入脚本编辑器。
  2. 删掉默认的myFunction,粘贴下面的代码(记得根据你们的实际规则修改注释里的选项):
function GETEMAIL(fullName, domain) {
  // 拆分全名(这里默认是"姓 名"用空格分隔的格式,要是你们是别的分隔符改这里就行)
  const nameParts = fullName.split(' ');
  if (nameParts.length < 2) {
    return "格式不对哦:请确保全名是姓和名分开的(比如\"张三\"写成\"张 三\")";
  }
  const lastName = nameParts[0].toLowerCase();
  const firstName = nameParts[1].toLowerCase();
  
  // 选一个你们公司的邮箱规则,把对应的行取消注释就行:
  // 1. 名.姓@domain.com → 比如"张 三"生成san.zhang@xxx.com
  // return `${firstName}.${lastName}@${domain}`;
  // 2. 姓.名@domain.com → 比如"张 三"生成zhang.san@xxx.com
  // return `${lastName}.${firstName}@${domain}`;
  // 3. 名首字母+姓@domain.com → 比如"张 三"生成szhang@xxx.com
  return `${firstName.charAt(0)}${lastName}@${domain}`;
}
  1. 给项目起个名字(比如"Email批量生成器")保存,回到Sheet里,在要出邮箱的单元格输入=GETEMAIL(A2, "yourcompany.com")(A2是存全名的单元格,第二个参数填你们公司的域名),下拉就能批量生成了!
方案2:调用Google Workspace Admin SDK精准获取域内用户邮箱(适合G Suite/Workspace管理员)

如果你们用的是Google Workspace(原G Suite),而且你是域管理员,那可以直接调用官方API查域内用户的真实邮箱,不用靠规则猜,精准度拉满:

  1. 还是打开Apps Script编辑器,先启用Admin SDK服务:
    • 点左侧的服务图标(那个拼图样的),找到Admin Directory API,点添加。
  2. 粘贴下面的脚本:
function GETDOMAINEMAIL(fullName) {
  try {
    // 搜索域内和全名匹配的用户,只取第一个结果
    const users = AdminDirectory.Users.list({
      query: `name.fullName='${fullName}'`,
      maxResults: 1
    });
    
    if (users.users && users.users.length > 0) {
      return users.users[0].primaryEmail;
    } else {
      return "没找到匹配的邮箱哦";
    }
  } catch (e) {
    return "权限不足或查询出错:" + e.message;
  }
}
  1. 保存后先运行一次函数(点编辑器顶部的运行按钮),会弹出授权提示,跟着步骤用管理员账号授权就行。
  2. 回到Sheet,输入=GETDOMAINEMAIL(A2),下拉就能批量拿到精准的域内用户邮箱了。
小提醒
  • 方案1的前提是有统一命名规则,如果你们公司邮箱规则乱七八糟,可能会有错误,得人工核对几个关键结果。
  • 方案2必须是Workspace域管理员才能用,普通用户没权限调用这个API。
  • 如果是外部联系人(不是你们域内的),Google Sheets没有直接的内置函数能查,这时候可能得先把联系人导入Google Contacts,再用VLOOKUP或者脚本匹配,但操作起来麻烦点,优先用上面俩方案哈。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.25 04:26:29