Übergeben von Zellreferenzen an Tabellenkalkulationsfunktionen
Wenn ich eine Tabellenkalkulationsfunktion aufrufe, sagen wirint(f2)
, arbeitet die Funktion mit dem Wert in der Zelle. Obcell("F2")
enthält 3.14159, das Ergebnis wäre 3. Aber wenn ich eine andere Art von Funktion aufrufe - zum Beispiel:row(f8)
- Die Funktion verwendet die Zellreferenz und nicht den Wert. In diesem Fall wird 8 zurückgegeben.
Wie bringe ich meine benutzerdefinierte Funktion dazu, mit der Referenz und nicht mit dem Wert zu arbeiten?
Ich kann eine Zeichenfolge übergeben und verwendengetRange()
, aber wenn ich die Zellen auf dem Blatt verschiebe oder aktualisiere, ändern sich die Zeichenfolgen nicht.
Wirklich einfaches Beispiel:
function GetFormula(cellname) {
return SpreadsheetApp.getActiveSheet().getRange(cellname).getFormula();
}
Mit diesem Code in meinem Blatt kann ich die Formel in C4 wie folgt abrufen:=GetFormula("C4")
Aber dieses Argument ist eine Zeichenfolge, und ich würde lieber einen Zellverweis übergeben. Ein etwas komplizierteres Problem erfordert, dass die aufrufenden Zellen beim Kopieren und Einfügen aktualisiert werden.
Irgendwelche Ideen?