繁体   English   中英

使用API​​和Python在Google表格电子表格中设置单元格格式

[英]Set cell format in Google Sheets spreadsheet using its API & Python

我正在使用gd_client.UpdateCell来更新谷歌电子表格中的值,我正在寻找一种方法来更新单元格的格式,即颜色,线条,文本化......

可以这样做吗?

有可用的示例或其他文档吗?

让我走的任何事都会很棒

(2017年2月) 自Google I / O 2016起 ,开发人员现在可以使用最新的API(v4)格式化Google表格中的单元格。 下面是加粗的第一行很短的Python的例子(假设该文件ID是SHEET_IDSHEETS是API服务端点):

DATA = {'requests': [
    {'repeatCell': {
        'range': {'endRowIndex': 1},
        'cell':  {'userEnteredFormat': {'textFormat': {'bold': True}}},
        'fields': 'userEnteredFormat.textFormat.bold',
    }}
]}

SHEETS.spreadsheets().batchUpdate(
        spreadsheetId=SHEET_ID, body=DATA).execute()

如果有帮助,我也就这个主题制作了一个开发者视频(见下文)。 顺便说一下,您不仅限于Python,还可以使用Google API客户端库支持的任何语言。

最新的Sheets API提供旧版本中不可用的功能,即为开发人员提供对Sheet的编程访问,就像使用用户界面一样(冻结行,单元格格式[!],调整行/列大小,添加数据透视表,创建图表,等等。)。 如果您是API新手,我已经制作了一些视频,其中包含更多“真实世界”的示例:

如您所知,Sheets API主要用于如上所述的面向文档的功能,但是要执行文件级访问,例如导入/导出,复制,移动,重命名等,请改用Google Drive API

我认为目前无法做到这一点。 当前的API(List和Cell API)允许更改数据,但不允许更改格式。

这里描述了整个API。 格式化没什么:

许多人在群组中提出这一要求,但从未得到Google的答复:

Google Apps脚本看起来可能会带来一些此功能,具体在Range类中:

https://developers.google.com/apps-script/reference/spreadsheet/range

重要的是,我还没有想出如何将Google Apps脚本绑定(和/或执行)到我目前正在创建并使用Google Drive API和Google表格API填写的表格。

我不是建议将您的应用移植到Google Apps脚本,但我现在正在认真考虑它。 我希望也许其他人对使用Google Apps脚本挂起API的最后一个缺失部分有所了解。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM