Google Sheets多同布局标签页指定范围打印脚本求助
实现多工作表指定区域批量打印的Google Apps Script方案
你可以通过以下Google Apps Script快速给所有标签页统一设置打印范围为E5:S48,操作完成后即可直接批量打印所有工作表的对应区域。
使用步骤
- 打开你的Google Sheets文件,点击顶部菜单栏的「扩展程序」-「Apps 脚本」打开脚本编辑器
- 删除编辑器内默认的空白代码,将下方的脚本完整粘贴进去
- 点击编辑器顶部的保存按钮,给项目自定义命名,按照页面提示完成脚本权限授权(如果出现「Google未验证应用」提示,点击「高级」-「前往[你的项目名称]」即可继续授权)
- 选中
batchSetPrintRange函数,点击运行按钮执行即可
可用脚本代码
function batchSetPrintRange() { const spreadsheet = SpreadsheetApp.getActiveSpreadsheet(); const allSheets = spreadsheet.getSheets(); // 打印范围配置,E列为第5列、S列为第19列 const PRINT_START_COL = 5; const PRINT_END_COL = 19; const PRINT_START_ROW = 5; const PRINT_END_ROW = 48; allSheets.forEach(sheet => { // 可在此处添加筛选逻辑,跳过不需要设置的标签页,示例: // if (sheet.getSheetName() === '目录') return; const pageSetup = sheet.getPageSetup(); // 设置当前标签页的打印区域 pageSetup.setPrintArea(PRINT_START_ROW, PRINT_START_COL, PRINT_END_ROW, PRINT_END_COL); // 可选打印配置,不需要可删除 pageSetup.setScale(PageSetup.Scale.FIT_TO_WIDTH); // 缩放适配页面宽度 pageSetup.setShowGridlines(false); // 打印时隐藏网格线 }); SpreadsheetApp.getUi().alert('所有标签页打印范围设置完成,可直接批量打印工作簿'); }
后续打印操作
脚本执行完成后,返回Google Sheets页面,点击顶部「文件」-「打印」,在右侧打印设置面板中:
- 「打印」选项选择工作簿
- 确认预览区域显示的内容仅为E5:S48的范围
- 按需调整其他打印参数后即可直接打印
内容的提问来源于stack exchange,提问作者Ryan Peterson
相关产品推荐
相关产品推荐

