我正在尝试让某人输入某个单元格“M19”移动到“Z1”,如果该单元格已满,则将其移至“Z2”,依此类推。
目前我的代码准确地将第一个和第二个输入“M19”移动到“Z1”和“Z2”中,但之后只是停止做任何事情。
function myFunction()
{
var ss = SpreadsheetApp.getActiveSheet();
var vZPos = "M19";
var zZPos = "Z1";
var vonZelle = ss.getRange(vZPos); //InputCell
var zuZelle = ss.getRange(zZPos); //FirstOutputCell
var i = 0;
var c = 2;
var cTos = c.toString();
var naechsteZuZelle = zZPos.replace("1", cTos);
var naechsteZuZelleRange = ss.getRange(naechsteZuZelle); //ChangingOutputCell
do
{
if (zuZelle.isBlank() == true && c == 2)
{
vonZelle.moveTo(zuZelle);
i++;
}
else
{
if (naechsteZuZelleRange.isBlank() == true)
{
vonZelle.moveTo(naechsteZuZelleRange);
i++;
}
else
{
c++;
}
}
}
while (i == 0);
}
由于我不擅长编码,所以我对如何继续做事情有点了解,我会对如何解决我的问题提出任何帮助和/或解释。
P.S。由于我用德语编码,一些变量名称可能看起来很奇怪,如果有任何问题我会尽力翻译/详细说明它们。
答案 0 :(得分:0)
变化:
else
{
c++;
}
要:
else
{
c++;
cTos = c.toString();
var naechsteZuZelle = zZPos.replace("1", cTos);
var naechsteZuZelleRange = ss.getRange(naechsteZuZelle)
}
它不在你的循环中。