Google Apps Script表格转文档:日期与货币格式修改求助
解决方案
日期格式修正(YYYY/MM/DD)
你当前的toLocaleDateString()会使用系统默认区域设置的日期格式,要强制输出YYYY/MM/DD,可通过以下两种方式修改:
方法1:指定区域与格式参数的toLocaleDateString
// 利用en-CA区域默认的YYYY/MM/DD格式,显式定义规则 const friendlyDate = new Date(row[7]).toLocaleDateString('en-CA', { year: 'numeric', month: '2-digit', day: '2-digit' });
方法2:手动拼接日期(完全可控)
如果担心区域设置差异,直接提取年月日并补零拼接:
const dateObj = new Date(row[7]); const year = dateObj.getFullYear(); // 月份从0开始,需+1后补零确保两位数 const month = String(dateObj.getMonth() + 1).padStart(2, '0'); const day = String(dateObj.getDate()).padStart(2, '0'); const friendlyDate = `${year}/${month}/${day}`;
韩元货币格式修正(₩1,250,000)
Google Sheets的单元格格式仅为显示层,脚本获取的是原始数字值,需在脚本内手动格式化:
假设货币值所在列索引为row[X](替换为实际列索引),使用toLocaleString指定韩元规则:
const currencyValue = row[你的货币列索引].toLocaleString('ko-KR', { style: 'currency', currency: 'KRW', minimumFractionDigits: 0 // 无需小数时设置为0 });
处理后,数字1250000会被转换为₩1,250,000格式。
注意事项
- 确保
row[7]是有效的日期值,若Sheet中日期为文本格式,需先转换为日期类型 - 货币列需为数字类型,若为文本格式,需先转成数字:
Number(row[你的货币列索引])
内容的提问来源于stack exchange,提问作者gilang storyG
相关产品推荐
相关产品推荐

