Lena_1995
Newbie
- Registriert
- Okt. 2020
- Beiträge
- 3
Hallo zusammen,
ich bin ganz neu bei Google App Script und bekomme folgende Funktion nicht gebaut:
Wenn ich eine Änderung des Zellwertes der Zelle D16 vornehme, soll der Inhalt folgender Zellen gelöscht werden:
D18
26
U18:U26
AD18:AD26
und außerdem soll in folgenden Zellen der Wert auf "FALSE" gesetzt werden:
AK19
AK21
AK23
AK25
AK27
(zur Erklärung: Hier ist eine Checkbox, in welcher der Haken deaktiviert werden soll).
Ich habe mich mal wie folgt rangetastet, wobei vorallem der erste Teil natürlich blödsinn ist. Ich habe aber nirgendswo ausfindig machen könne, wie ich bestimme dass die funktion nur dann ausgelöst wird, wenn ich in Zelle D16 eine Änderung vornehme.
Entscheidend ist auch noch, dass diese Funktion nur auf dem Tabellenblatt "Formular" ausgelöst und auch nur hier zellwerte gelöscht bzw. auf False gesetzt werden dürfen. Alle sonstigen Tabellenblätter in der Datei sollen also hiervon völlig unberührt bleiben.
Für Hilfe wäre ich wirklich sehr dankbar.
Liebe Grüße
Also ich bin schon mal ein kleines Stück weiter:
Das macht zumindest schonmal ansatzweise das was ich möchte, allerdings führt er die funktion nur aus, wenn ich in spalte eins irgend einen wert verändere. ich möchte aber dass diese funktion nur dann ausgeführt wird wenn ich in Zelle D16 etwas verändere. Und irgendwo muss ich vermutlich noch bestimmen, dass die Funktion nur auf dem Tabellenblatt "Formular" ausgeführt und ausgelöst werden darf.
ich bin ganz neu bei Google App Script und bekomme folgende Funktion nicht gebaut:
Wenn ich eine Änderung des Zellwertes der Zelle D16 vornehme, soll der Inhalt folgender Zellen gelöscht werden:
D18

U18:U26
AD18:AD26
und außerdem soll in folgenden Zellen der Wert auf "FALSE" gesetzt werden:
AK19
AK21
AK23
AK25
AK27
(zur Erklärung: Hier ist eine Checkbox, in welcher der Haken deaktiviert werden soll).
Ich habe mich mal wie folgt rangetastet, wobei vorallem der erste Teil natürlich blödsinn ist. Ich habe aber nirgendswo ausfindig machen könne, wie ich bestimme dass die funktion nur dann ausgelöst wird, wenn ich in Zelle D16 eine Änderung vornehme.
Javascript:
function onEdit(e) {
var range = e.range.offset(0, 2, 1);
if (e.range.columnStart == 1){
zellenInhaltLoeschen();
}
}
function zellenInhaltLoeschen(){
var sheet=SpreadsheetApp.getActiveSheet();
var destination1="D18:D26";"U18:U26";"AD18:AD26";
sheet.getRange(destination1).setValue("");
var destination2="AK19";"AK21";"AK23";"AK25";"AK27";
sheet.getRange(destination2).setValue("FALSE");
}
Entscheidend ist auch noch, dass diese Funktion nur auf dem Tabellenblatt "Formular" ausgelöst und auch nur hier zellwerte gelöscht bzw. auf False gesetzt werden dürfen. Alle sonstigen Tabellenblätter in der Datei sollen also hiervon völlig unberührt bleiben.
Für Hilfe wäre ich wirklich sehr dankbar.
Liebe Grüße
Ergänzung ()
Also ich bin schon mal ein kleines Stück weiter:
Javascript:
function onEdit(e) {
var range = e.range.offset(0, 2, 1);
if (e.range.columnStart == 1){
zellenInhaltLoeschen();
}
if (e.range.columnStart == 1){
zellenInhaltFalse();
}
}
function zellenInhaltLoeschen(){
var sheet=SpreadsheetApp.getActiveSheet();
var destination1="D18:D26";
var destination2="U18:U26";
var destination3="AD18:AD26";
sheet.getRange(destination1).setValue("");
sheet.getRange(destination2).setValue("");
sheet.getRange(destination3).setValue("");
}
function zellenInhaltFalse(){
var sheet=SpreadsheetApp.getActiveSheet();
var destination1="AK19";
var destination2="AK21";
var destination3="AK23";
var destination4="AK25";
var destination5="AK27";
sheet.getRange(destination1).setValue("FALSE");
sheet.getRange(destination2).setValue("FALSE");
sheet.getRange(destination3).setValue("FALSE");
sheet.getRange(destination4).setValue("FALSE");
sheet.getRange(destination5).setValue("FALSE");
}
Das macht zumindest schonmal ansatzweise das was ich möchte, allerdings führt er die funktion nur aus, wenn ich in spalte eins irgend einen wert verändere. ich möchte aber dass diese funktion nur dann ausgeführt wird wenn ich in Zelle D16 etwas verändere. Und irgendwo muss ich vermutlich noch bestimmen, dass die Funktion nur auf dem Tabellenblatt "Formular" ausgeführt und ausgelöst werden darf.
Zuletzt bearbeitet: