對于我的一生,我不知道這段代碼有什么問題,它記錄了正確的數字,但除非我自己輸入,否則不會正確添加數字。
https://docs.google.com/spreadsheets/d/1kxIzE_HcPWd82LpGqCXNxg0yczhcnA6yOYRnB4GuAZo/edit?usp=sharing
var column = 0;
var HEADER_ROW_COUNT = 1;
var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
var worksheet = spreadsheet.getSheetByName("RawData");
var rows = worksheet.getDataRange().getNumRows();
var vals = worksheet.getSheetValues(1, 1, rows, 1);
var max = 0;
for (var row = HEADER_ROW_COUNT; row < vals.length; row ) {
var splitstring = vals[row][0].toString().split(" ");
var splitstring = vals[row][0].toString().split(" ");
var id = splitstring[1];
Logger.log(id)
if (max < id) {
Logger.log(id)
max = id 1;
Logger.log(max)
}
}
var LastRow = worksheet.getLastRow();
worksheet.getRange(LastRow 1,1).setValue("PO# " max.toString());
uj5u.com熱心網友回復:
雖然我不確定我是否能正確理解您的目標,但在您的腳本中,var id = splitstring[1];檢索的var splitstring = vals[row][0].toString().split(" ");是字串型別。我認為這可能是您的問題的原因。當這反映到您的腳本時,它變成如下。
從:
var id = splitstring[1];
Logger.log(id)
if (max < id) {
到:
var id = Number(splitstring[1]);
Logger.log(id)
if (max <= id) {
筆記:
- 例如,在您的腳本中,您也可以使用
var max = Math.max(...vals.map(([v]) => Number(v.split(" ").pop()))) 1;代替 for 回圈。
參考:
- 分裂()
uj5u.com熱心網友回復:
試試這個:
function myfunk() {
var ss = SpreadsheetApp.getActive();
var sh = ss.getSheetByName("RawData");
Logger.log(parseInt(sh.getRange(sh.getLastRow(), 1).getValue().split(' ')[1]) 1);
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/358355.html
上一篇:如何使用App腳本創建更多過濾器
下一篇:基于比較運算子的顯示元素
