在线Excel中使用TypeScript获取用户名或邮箱地址的方法求助
在在线Excel中用TypeScript获取当前用户信息并写入单元格
在在线Excel里,你需要用Office Scripts(微软为Excel Online提供的TypeScript脚本工具)来实现类似VBA的功能。以下是直接获取当前用户姓名/邮箱并写入A1单元格的代码:
function main(workbook: ExcelScript.Workbook) { // 获取当前用户的姓名和邮箱 const userProfile = Office.context.mailbox.userProfile; const userName = userProfile.displayName; // 对应当前用户的显示姓名 const userEmail = userProfile.emailAddress; // 对应用户的邮箱地址 // 选中当前活动工作表 const activeSheet = workbook.getActiveWorksheet(); // 将姓名写入A1单元格(和你VBA里的逻辑一致) activeSheet.getRange("A1").setValue(userName); // 如果需要写入邮箱,可以取消下面这行的注释 // activeSheet.getRange("A2").setValue(userEmail); }
说明:
- 这是Office Scripts专属代码,操作路径:Excel Online顶部菜单栏「自动化」→「新建脚本」,粘贴代码后运行即可。
Office.context.mailbox.userProfile直接返回当前登录用户的基本信息,默认权限即可访问,无需额外配置。- 若只需要VBA中
Application.Username对应的用户姓名,仅保留userProfile.displayName部分即可。
内容的提问来源于stack exchange,提问作者David Howarth
相关产品推荐
相关产品推荐

