1

Ich schrieb eine benutzerdefinierte Funktion namens sendEmails in einem Skript mit einer Google-Tabelle verknüpft. Es funktioniert, wenn ich die Funktion über den Skript-Editor ausführe, aber es funktioniert nicht, wenn ich es durch die Tabelle führe.E-Mail programmgesteuert senden

Mein Ziel ist es, die Tabelle laufen zu lassen, ohne einen Benutzer zu haben, und eine Warnung (in meinem Fall eine E-Mail) automatisch zu senden, wenn eine Bedingung in den Tabellenzellen erfüllt ist.

Dies ist nicht funktionierenden Code:

=if(V3=X3,sendEmails(),"Waiting") 

Der Alarm kann alles sein, dass ich mein Handy oder einen anderen Computer lesen kann.

+0

Sie könnten einen onEdit Auslöser in Betracht ziehen. (Entschuldigung, nicht sicher, warum dein Code nicht funktioniert) – Casper

Antwort

0

Ohne einen Blick auf die vollständige Liste des Codes, ist es schwer zu sagen. Zwei Möglichkeiten basierend auf Ihrer einzelnen Codezeile.

1) Es ist nicht genug zu sagen =if(V3==X3) und davon auszugehen, dass sie ausgelöst werden, wenn sie gleich werden. Sie müssen für das Arbeitsblatt angeben, wann es überprüft werden soll, ob diese gleich sind (z. B. unter spreadsheet edit oder in einem bestimmten Zeitintervall).

2) In Ihrer if-Anweisung geben Sie an, dass V3 SOLLEN gleich X3 sein soll und nicht, ob es ist. =if(V3==X3) oder =if(V3===X3) löst dies.

1

Mit benutzerdefinierten Funktionen sind Sie durch die Arten von Diensten eingeschränkt, die Sie verwenden können, da benutzerdefinierte Funktionen nie nach Authentifizierung fragen. https://developers.google.com/apps-script/guides/sheets/functions#using_apps_script_services

Sie können Ihre Funktion der Add-On-Symbolleiste hinzufügen oder einen installierbaren Trigger einrichten, um die sendEmails()-Funktion auszuführen.

Hier finden Sie weitere Dokumentationen, die Ihnen helfen können.

https://developers.google.com/apps-script/guides/menus

https://developers.google.com/apps-script/guides/triggers/installable