Google 工作表脚本在递增 1 后在 sku 中保持前导 0
Google Sheets Script Keep Leading 0's in a sku after incrementing by 1
我正在尝试使用 Google 表格上的按钮将 SKU 递增 1,但在将 SKU 递增 1 后我无法保持前导 0。下面的代码会将 SKU 递增 1 并保持除前导 0 之外的格式。 SKU 格式为:CBP-2022-00001。对此的任何帮助将不胜感激。我是这门语言的新手,所以如果您需要更多信息,请告诉我。
function incrementSku() {
const ss = SpreadsheetApp.getActive();
const sh = ss.getSheetByName('cheat_sheet');
var sku = sh.getRange("B15").getValue();
var skuEnd = sku.slice(-5);
var skuBegin = sku.slice(0,9);
var skuNum = Number(skuEnd) + 1;
var skuFinal;
skuEnd = skuNum.toString();
skuFinal = skuBegin + skuEnd;
sh.getRange("B15").setNumberFormat('@STRING@').setValue(skuFinal);
}
描述
您可以使用 Utilities.formatString() 用零填充左侧。
编辑脚本
skuFinal = skuBegin + Utilities.formatString("%05d",skuNum);
sh.getRange("A2").setValue(skuFinal);
参考
我正在尝试使用 Google 表格上的按钮将 SKU 递增 1,但在将 SKU 递增 1 后我无法保持前导 0。下面的代码会将 SKU 递增 1 并保持除前导 0 之外的格式。 SKU 格式为:CBP-2022-00001。对此的任何帮助将不胜感激。我是这门语言的新手,所以如果您需要更多信息,请告诉我。
function incrementSku() {
const ss = SpreadsheetApp.getActive();
const sh = ss.getSheetByName('cheat_sheet');
var sku = sh.getRange("B15").getValue();
var skuEnd = sku.slice(-5);
var skuBegin = sku.slice(0,9);
var skuNum = Number(skuEnd) + 1;
var skuFinal;
skuEnd = skuNum.toString();
skuFinal = skuBegin + skuEnd;
sh.getRange("B15").setNumberFormat('@STRING@').setValue(skuFinal);
}
描述
您可以使用 Utilities.formatString() 用零填充左侧。
编辑脚本
skuFinal = skuBegin + Utilities.formatString("%05d",skuNum);
sh.getRange("A2").setValue(skuFinal);
参考