【发布时间】:2020-07-14 19:01:43
【问题描述】:
有人知道如何将属性类型 = 字符串而不是日期应用于两列吗?
我的问题是,当用户插入新日期时,Excel 会自动将其转换为日期格式(所以在数字中)我想阻止这种行为以使用纯字符串。
【问题讨论】:
标签: javascript excel office-js excel-addins
有人知道如何将属性类型 = 字符串而不是日期应用于两列吗?
我的问题是,当用户插入新日期时,Excel 会自动将其转换为日期格式(所以在数字中)我想阻止这种行为以使用纯字符串。
【问题讨论】:
标签: javascript excel office-js excel-addins
日期存储为整数,表示从 1900 年 1 月 1 日(存储为数字 1)到 9999 年 12 月 31 日的天数,存储为 2958465。
所以当用户键入 2020/1/1 时,它会自动转换为 43831,即 1900/1/1 之后的 43831 天,原因是 Excel 将使用类型转换为日期格式,因为它匹配默认日期格式。
如果您想更改此默认行为,您可以使用 range.numberFormat API 来预设用户可能想要输入的单元格。这会将使用的 Range 的 numberFormat 转换为 Text。
await Excel.run(async (context) => {
const sheet = context.workbook.worksheets.getItem("Sample");
const range = sheet.getUsedRange();
range.numberFormat = '@';
await context.sync();
});
【讨论】: