Google Sheets中基于单元格数值批量生成带Season后缀的URL
批量生成剧集每季独立URL的解决方案
针对你的需求——根据A2:A6的剧集主URL和C2:C6对应的季数,从A8开始生成每剧每季的独立URL,这里提供两种实用方法:
方法一:内置公式一键生成
直接在A8单元格输入以下公式,即可自动生成所有所需URL,无需手动逐个操作:
=ARRAYFORMULA(FLATTEN(MAP(A2:A6,C2:C6,LAMBDA(url,seasons,IF(seasons="",,url&"/season/"&SEQUENCE(seasons))))))
公式逻辑说明:
MAP遍历每一行的URL和对应季数SEQUENCE(seasons)生成1到目标季数的连续序列- 拼接URL与季数后缀后,通过
FLATTEN将多维结果转为单列,自动填充到A8及下方单元格
方法二:Google Apps Script脚本生成
如果需要后续扩展逻辑,可使用脚本实现更灵活的控制:
- 打开表格,点击顶部菜单栏「扩展程序」→「Apps 脚本」
- 清空默认代码,粘贴以下脚本:
function generateSeasonURLs() { const sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet(); const data = sheet.getRange("A2:C6").getValues(); let targetRow = 8; data.forEach((row) => { const baseURL = row[0]; const seasonCount = row[2]; if (!baseURL || typeof seasonCount !== "number" || seasonCount <= 0) return; const seasonURLs = []; for (let i = 1; i <= seasonCount; i++) { seasonURLs.push([`${baseURL}/season/${i}`]); } sheet.getRange(targetRow, 1, seasonURLs.length, 1).setValues(seasonURLs); targetRow += seasonURLs.length; }); }
- 点击保存按钮,给脚本命名(比如「GenerateSeasonURLs」)
- 点击运行按钮,完成授权后即可自动生成所有URL
公式法快速简单,脚本法适合后续功能扩展,可根据需求选择使用。
内容的提问来源于stack exchange,提问作者lise
相关产品推荐
相关产品推荐

