【发布时间】:2018-10-18 23:33:35
【问题描述】:
看到 smartsheet SDK 的 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 SDK,我使用Sheets.copy_rows() 方法将行从在 UI 中导入的工作表复制到另一个按照我的项目工作表模板创建的空白工作表。
这似乎工作得很好,除了联系人列,我想在其中显示联系人姓名而不是联系人电子邮件地址。
根据https://smartsheet-platform.github.io/api-docs/?python#contact-list-columns:
在为联系人列表列创建或更新单元格时, displayValue 属性的作用如下:
- 如果 displayValue 为非 null 且非空,Smartsheet 单元格将显示提供的值。
- 如果 displayValue 为空字符串,Smartsheet 单元格将显示电子邮件地址。
- 如果 displayValue 为 null 或不存在,Smartsheet 会根据电子邮件使用联系人姓名进行最佳猜测 地址。
查看我通过导入创建的工作表,我可以看到我的单元格数据为:{"columnId": 7027801426552708, "value": "eleroy@******.com"}。
根据上面的文档,由于 displayValue 不存在,我希望复制到联系人列表列中会尝试根据电子邮件地址填写联系人的姓名。
有没有办法在 XLS 导入或复制过程中强制将其转换为联系人姓名?
编辑:
从下面的一些答案中可以看出,我想副本会按原样复制数据是有道理的,所以我试图让它在 XLS 导入时填写联系人姓名。
我正在尝试找到一种方法在 Excel 中同时注入显示值和值,但尚未成功。我尝试过超链接、电子邮件链接、=HYPERLINK() 公式,但到目前为止没有成功。
【问题讨论】: