Programmierkenntnisse: Anfänger
Dauer: 10 Minuten
Projekttyp: Benutzerdefinierte Funktion
Ziele
- Verstehen, was die Lösung bewirkt
- Verstehen, was die Google Apps Script-Dienste in der Lösung bewirken
- Das Script einrichten
- Das Script ausführen.
Informationen zu dieser Lösung
Wenn Sie Ihren Kunden ein gestaffeltes Preissystem anbieten, können Sie mit dieser benutzerdefinierten Funktion die Rabattbeträge für Ihre Preise in Google Sheets einfacher berechnen.
Sie können zwar die integrierte Funktion SUMPRODUCT verwenden, um eine gestaffelte Preisberechnung durchzuführen, aber die Verwendung von SUMPRODUCT ist komplexer und weniger flexibel als die benutzerdefinierte Funktion dieser Lösung.

Funktionsweise
Bei einem gestaffelten Preissystem sinken die Kosten für Waren oder Dienstleistungen je nach gekaufter Menge.
Angenommen, Sie haben zwei Stufen: eine von 0 bis 500 $ mit einem Rabatt von 10% und eine von 501 bis 1.000 $ mit einem Rabatt von 20%. Wenn der Gesamtpreis, für den Sie einen Rabatt berechnen müssen, 700 $beträgt, multipliziert das Script die ersten 500 $mit 10% und die restlichen 200 $mit 20%, was einem Gesamtrabatt von 90 $entspricht.
Bei einem bestimmten Gesamtpreis durchläuft das Script die angegebenen Stufen in der Tabelle mit den gestaffelten Preisen. Für jeden Teil des Gesamtpreises, der in eine Stufe fällt, wird dieser Teil mit dem zugehörigen Prozentsatz der Stufe multipliziert. Das Ergebnis ist die Summe der Berechnungen für jede Stufe.
Apps Script-Dienste
Diese Lösung verwendet den folgenden Dienst:
- Tabellendienst: Nimmt den angegebenen Wert und berechnet, welcher Teil des Werts mit dem prozentualen Rabatt jeder Stufe multipliziert werden muss.
Vorbereitung
Für die Verwendung dieses Beispiels sind folgende Voraussetzungen erforderlich:
- Ein Google-Konto (für Google Workspace-Konten ist möglicherweise die Genehmigung durch den Administrator erforderlich)
- Ein Webbrowser mit Internetzugriff
Script einrichten
Klicken Sie auf die folgende Schaltfläche, um eine Kopie der Tabelle Benutzerdefinierte Funktion für gestaffelte Preise zu erstellen:
Das Apps Script-Projekt für diese Lösung ist an die Tabelle angehängt.
Das Script ausführen
- In der kopierten Tabelle zeigt die Tabelle in Zeile 16 eine Beispielpreisberechnung für ein SaaS-Produkt (Software as a Service).
- Geben Sie in Zelle
C20=tierPrice(C19,$B$3:$D$6)ein, um den Rabattbetrag zu berechnen. Der Endpreis wird in ZelleC21aktualisiert. Wenn Sie sich an einem Ort befinden, an dem Kommas als Dezimaltrennzeichen verwendet werden, müssen Sie möglicherweise stattdessen=tierPrice(C19;$B$3:$D$6)eingeben.
Code ansehen
Klicken Sie auf Quellcode ansehen, um den Apps Script-Code für diese Lösung zu sehen:
Quellcode ansehen
Code.gs
Änderungen
Sie können die benutzerdefinierte Funktion nach Bedarf bearbeiten. Wenn Sie eine optionale Ergänzung zum manuellen Aktualisieren der Ergebnisse benutzerdefinierter Funktionen sehen möchten, klicken Sie auf Im Cache gespeicherte Ergebnisse aktualisieren:
Im Cache gespeicherte Ergebnisse aktualisieren
Im Gegensatz zu integrierten Funktionen werden benutzerdefinierte Funktionen von Google im Cache gespeichert, um die Leistung zu optimieren. Wenn Sie also etwas in Ihrer benutzerdefinierten Funktion ändern, z. B. einen Wert, der berechnet wird, wird möglicherweise nicht sofort eine Aktualisierung erzwungen. So aktualisieren Sie das Ergebnis der Funktion manuell:
- Fügen Sie einer leeren Zelle ein Kästchen hinzu, indem Sie auf Einfügen > Kästchen klicken.
- Fügen Sie die Zelle mit dem Kästchen als zusätzlichen Parameter der benutzerdefinierten
Funktion hinzu. Wenn Sie beispielsweise der Zelle
D20ein Kästchen hinzufügen, aktualisieren Sie dietierPrice()Funktion in ZelleC20zu=tierPrice(C19,$B$3:$D$6,D20). - Setzen Sie ein Häkchen in das Kästchen oder entfernen Sie es, um die Ergebnisse der benutzerdefinierten Funktion zu aktualisieren.
Beitragende
Dieses Beispiel wird von Google mit Unterstützung von Google Developer Experts verwaltet.