如何使用Script Editor自动创建全新的Google Spreadsheet?
如何自动创建全新的Google Spreadsheet(而非单个工作表)
我太懂你的感受了——翻遍各种教程,全是教你怎么在现有Spreadsheet里新增工作表(Sheet)的,想要找个创建全新独立Google Spreadsheet的方案真的挺费劲。下面给你两种实用的实现方式,覆盖脚本和API场景:
方法1:用Google Apps Script直接创建
这是最便捷的方式,不需要额外依赖,直接在Google生态里操作就行。你只需要新建一个Apps Script项目,粘贴下面的代码:
function createNewSpreadsheet() { // 自定义新表格的名称 const newSheetName = "我的全新表格"; // 创建新的Spreadsheet,返回表格对象 const newSpreadsheet = SpreadsheetApp.create(newSheetName); // 获取新表格的链接,方便后续使用 const spreadsheetUrl = newSpreadsheet.getUrl(); // 可以在这里添加额外操作,比如设置共享权限、写入初始数据 // newSpreadsheet.getSheetByName('Sheet1').getRange('A1').setValue('初始化内容'); console.log("新表格已创建:" + spreadsheetUrl); }
运行这段代码之前,记得授权脚本访问你的Google Drive权限,执行后就能在你的Drive里看到全新的Spreadsheet啦。
方法2:通过Google Sheets API创建(适合其他语言调用)
如果需要在Python、Node.js等外部程序里自动创建,就用Sheets API。以Python为例,步骤如下:
- 先安装Google客户端库:
pip install google-api-python-client google-auth-httplib2 google-auth-oauthlib
- 编写创建表格的代码:
from googleapiclient.discovery import build from google.oauth2 import service_account # 替换成你的服务账户密钥路径 SERVICE_ACCOUNT_FILE = 'path/to/your/service-account-key.json' SCOPES = ['https://www.googleapis.com/auth/spreadsheets'] def create_new_spreadsheet(): creds = service_account.Credentials.from_service_account_file( SERVICE_ACCOUNT_FILE, scopes=SCOPES) service = build('sheets', 'v4', credentials=creds) # 定义新表格的属性 spreadsheet_body = { 'properties': { 'title': '通过API创建的新表格' } } # 发送创建请求 request = service.spreadsheets().create(body=spreadsheet_body) response = request.execute() print(f"新表格已创建,链接:{response['spreadsheetUrl']}") if __name__ == '__main__': create_new_spreadsheet()
注意:使用API的话需要先在Google Cloud控制台创建服务账户,并启用Sheets API,把密钥文件下载到本地。
额外提示
- 不管用哪种方法,都可以自定义表格的名称、初始数据甚至格式
- 如果需要把新表格存到指定的Drive文件夹里,Apps Script可以用
DriveApp的方法,API则需要在创建时指定父文件夹ID
内容的提问来源于stack exchange,提问作者Mahmoud Maarouf
相关产品推荐
相关产品推荐

