在我的 Google Apps 脚本中,我在电子表格中添加了一行。在附加的这一行中,我尝试插入一个值“0102”的字符串,但是插入时它会转换为数字 102。有没有什么方法可以使用 Google Apps 脚本将值插入到工作表中,而不会格式化这些类型将数字转换为整数但将它们保留为字符串?
在设置其值之前,您需要将单元格格式设置为纯文本。从这个答案 https://stackoverflow.com/a/19545263,(看似没有记录的)技巧是setNumberFormat('@STRING@')
。例如,
sheet.getRange("A1").setNumberFormat('@STRING@').setValue('0102');
将单元格 A1 设置为纯文本,并设置值“0102”,该值仍为字符串。
很遗憾,appendRow
,作为添加行和插入值的原子操作,不会为格式化留下空间。所以你需要一些更详细的东西,例如
sheet.insertRowAfter(sheet.getLastRow());
var range = sheet.getRange(sheet.getLastRow() + 1, 1, 1, 3);
range.setNumberFormats([['', '', '@STRING@']]).setValues([['Boston', 'MA', '02201']]);
此代码添加一行并用 Boston MA 02201 填充其中的前三个单元格,并将邮政编码 02201 保留为字符串。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)