首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用API设置Google Sheets电子表格单元格的格式?

如何使用API设置Google Sheets电子表格单元格的格式?
EN

Stack Overflow用户
提问于 2012-12-04 07:23:23
回答 5查看 6.9K关注 0票数 5

我的应用程序生成一个数据表,并在用户的Google Drive中创建一个新的电子表格文档。如何添加格式(颜色、字体粗细、宽度等)到单个细胞吗?我似乎找不到任何文档,更不用说如何通过google-api-ruby-client实现它了。

我的大多数发现都可以追溯到Google API邮件列表,声明它不受支持。

然而,我发现另一个应用程序实现了我想要的结果。"Smartsheet“将文档导出到Google Drive的示例:

来自Smartsheet.com:

在我的Google Drive中生成的工作表:

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2013-06-14 04:13:12

Smartsheet利用Google API的功能导入Excel文件。代码大致是这样的:

代码语言:javascript
复制
DocsService client = new DocsService(<YOUR APP NAME>);
client.setOAuthCredentials(<OAUTH PARAMETERS>);

DocumentListEntry newEntry = new SpreadsheetEntry();
newEntry.setMediaSource(new MediaByteArraySource(<EXCEL FILE BYTE ARRAY OUTPUT STREAM>, DocumentListEntry.MediaType.XLS.getMimeType()));
newEntry.setTitle(new PlainTextConstruct(<FILE NAME>));

DocumentListEntry insertedEntry = client.insert(new URL("https://docs.google.com/feeds/default/private/full/"), newEntry);

// This is your URL to the new doc
String docUrl = insertedEntry.getDocumentLink().getHref();

我们已经能够通过Apache POI将Smartsheet导出为带有格式的Excel文件。将导出添加到Google电子表格对我们来说实现起来非常简单,它提供了一些额外的功能,而不是通过API可以完成的功能。

对于延迟的响应,很抱歉--恰巧遇到这个问题。

票数 4
EN

Stack Overflow用户

发布于 2017-03-09 12:58:43

(2017年2月) As of Google I/O 2016,开发人员不再需要导出到,也不再需要创建具有所需格式的新工作表,因此其他答案现在已过时。现在可以使用Google Sheets API设置单元格的格式。下面是一个简短的Python示例,其中加粗了第一行(假设文件ID是SHEET_IDSHEETS是API服务端点):

代码语言:javascript
复制
DATA = {'requests': [
    {'repeatCell': {
        'range': {'endRowIndex': 1},
        'cell':  {'userEnteredFormat': {'textFormat': {'bold': True}}},
        'fields': 'userEnteredFormat.textFormat.bold',
    }}
]}

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

如果有帮助的话,我还制作了一个关于这个主题的开发人员视频(见下文)。顺便说一句,您可以在Ruby (参见its API quickstart sample)或Google APIs Client Libraries支持的任何其他语言中做同样的事情。

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

要了解通过Google Sheets的REST API或Google Apps Script还能做些什么,请查看我的其他videos。可以看出,Sheets API主要用于上述document-oriented功能,但是要执行文件-level访问,如导入/导出、复制、移动、重命名等,请使用Google Drive API

票数 7
EN

Stack Overflow用户

发布于 2012-12-04 12:53:13

API只提供对数据的访问,并不公开任何添加格式的方法。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13693612

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档