use*_*669 11 google-apps-script
我有一个 WooCommerce 商店,它与 Zapier 连接到 Google 电子表格。在此文件中,我会跟踪销售情况等。其中一些列显然包含价格,例如不含增值税的价格等。但是,出于某种原因,定价值以字符串形式存储在我的电子表格中,例如 18.21。
为了能够使用这些值自动计算,我需要将这些特定列中的值转换为以逗号作为分隔符的数字。我是 Google Script 的新手,但是通过阅读其他一些帖子等,我设法“编写”了以下脚本,几乎可以完成这项工作:
function stringIntoNumber() {
var sheetActive = SpreadsheetApp.openById("SOME_ID");
var sheet = sheetActive.getSheetByName("SOME_SHEETNAME");
var range = sheet.getRange("R2:R");
range.setValues(range.getValues().map(function(row) {
return [row[0].replace(".", ",")];
}));
}
Run Code Online (Sandbox Code Playgroud)
只要在 R 列中只能找到带点的值,脚本就可以正常工作。当属于该范围的值更改为带逗号的值时,脚本会给出错误:TypeError,找不到函数替换。
我真的希望我把我的问题说清楚了,我真诚地希望有人能帮助我。
干杯,
汉斯
小智 14
在查找区域输入“.”
在替换为区域放置“,”
发生错误是因为.replace是字符串方法,不能应用于数字。一个简单的解决方法是确保参数始终是一个字符串,有一种.toString()方法可以做到这一点。
在你的代码中尝试
return [row[0].toString().replace(".", ",")];
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
35149 次 |
| 最近记录: |