看到smartsheet的1.3.3版本和直接从SDK导入XLS文件的能力(我还没有尝试),我开始思考如何能够以最少的请求来实现上传非常大的页的目标。(见相关问题:Building whole sheet programmatically with Python SDK、How to create a project sheet via the python SDK)
我目前的测试方法是导入一个XLS文件(尽管到目前为止是UI ),该文件的格式没有正确设置(尝试用甘特视图和资源管理创建一个项目表)。
使用python,我使用Sheets.copy_rows()方法将UI中导入的工作表中的行复制到我的项目工作表模板之后创建的另一个空白表中。
这似乎是完美的工作,除了联系人列,在其中我想显示联系名称,而不是联系电子邮件地址。
根据https://smartsheet-platform.github.io/api-docs/?python#contact-list-columns
在为联系人列表列创建或更新单元格时,displayValue属性的工作方式如下:
查看从导入创建的工作表,我可以看到我的单元格数据为:{"columnId": 7027801426552708, "value": "eleroy@******.com"}。
根据上面的文档,由于displayValue不在,我希望将副本放入联系人列表列中,尝试根据电子邮件地址填写联系人的姓名。
,我是否可以强迫它在XLS导入或复制过程中转换为联系人的名称?
编辑:
正如下面的一些答案所显示的,我想复制数据是有意义的,所以我只能让它在XLS导入时填写联系人名称。
我正在设法在Excel中同时注入显示值和值,但尚未成功。我尝试过超链接、电子邮件链接、=超级链接()公式,但到目前为止没有成功。
发布于 2018-05-08 23:56:21
如果您设置的Value与电子邮件地址和displayValue作为联系方式,你应该能够得到你想要的东西。例如,下面的通用HTTP请求正文将在单元格中显示"MyUser Gmail“,但将myuser@gmail作为联系人电子邮件。
[
{
"toBottom": true,
"cells": [
{
"columnId": 6xxxxxxxxxxxxxx8,
"value": "myuser@gmail.com",
"displayValue": "MyUser Gmail"
}
]
}
]发布于 2018-05-09 00:14:49
如果displayValue为空,则表示此单元格的联系人没有与其关联的名称。如果原始工作表确实包含名称,则在复制过程中可能会出现故障点。
如果不查看Python,我可能会猜到copy_rows()只是由value而不是displayValue进行复制。尝试手动设置联系人单元格的值/显示值,并查看该值是否有效。
https://stackoverflow.com/questions/50243374
复制相似问题