【发布时间】:2019-07-17 23:27:11
【问题描述】:
我编写了一个脚本,它从用户指定的行中获取所有值。然后我将这些值填入一张新表中,并自动向下一行设置下一个值。但是有些单元格是空的,我想忽略这些。目前,我的脚本每次写入值时都会下降一行,但它也对空值执行此操作。
function tourzettelV4() {
var app = SpreadsheetApp.getActive();
var ppt2019 = app.getSheetByName("PlakatTool2019");
// Abfragen aus welcher Zeile der Tourzettel generiert werden soll
// Asking which row to use
var row=SpreadsheetApp.getUi().prompt('Gib die Zeile mit dem Datum für die Tour ein').getResponseText();
var dateTour = ppt2019.getRange(row, 1).getValue();
var newSheet = app.getSheetByName("TourzettelV2")
newSheet.getRange(1, 1).setValue(dateTour);
newSheet.getRange(1, 2).setValue("Gebiet:");
newSheet.getRange(3, 1).setValue("Was");
newSheet.getRange(3, 2).setValue("Format");
newSheet.getRange(3, 3).setValue("Menge");
newSheet.getRange(3, 4).setValue("Info");
var lastCol = ppt2019.getLastColumn();
// Loop mit if value empty repeat loop, else set value
var checkCol = 3;
var mengeZeile = 4;
for(var komulierer = 0; komulierer < lastCol - 3; komulierer++){
var plakatMenge = ppt2019.getRange(row, 3 + komulierer, checkCol + komulierer, row).getValues();
if(plakatMenge === ""){
}
//this is where I want to just repeat the loop in case a cell is empty
else {
newSheet.getRange(mengeZeile, 3).setValue(plakatMenge);
mengeZeile = mengeZeile + 1;
}
}
}
我摆弄了 .isBLank(),它不起作用,我尝试使用 if else 语句,以便如果值为空,它只会重新启动循环,并且只有当它不为空时才会设置值,没有用。
所以现在是这样的:
EMPTY
10
EMPTY
EMPTY
20
但我需要这样:
10
20
【问题讨论】:
标签: google-apps-script google-sheets