Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
In diesem Tutorial erfahren Sie, wie Sie im erweiterten Modus mithilfe von Ausdrücken und Bedingungen mehrere Werte vergleichen.
Wenn Sie einen Cloud-Flow erstellen, können Sie im Standardmodus mithilfe der Karte Bedingung schnell einen einzelnen Wert mit einem anderen Wert vergleichen. Es kann jedoch vorkommen, dass Sie mehrere Werte vergleichen müssen. Beispielsweise müssen Sie eventuell den Wert einiger Spalten in einem Arbeitsblatt oder einer Datenbanktabelle überprüfen.
Sie können in den Bedingungen eine beliebige Kombination der folgenden logischen Ausdrücke verwenden.
Ausdruck | Beschreibung | Beispiel |
---|---|---|
and | Akzeptiert zwei Argumente und gibt „true“ zurück, wenn beide Werte die Bedingung erfüllen. Hinweis: Beide Argumente müssen boolesche Werte sein. |
Dieser Ausdruck gibt „falsch“ zurück:and(greater(1,10),equals(0,0)) |
or | Akzeptiert zwei Argumente und gibt „true“ zurück, wenn eines der Argumente die Bedingung erfüllt. Hinweis: Beide Argumente müssen boolesche Werte sein. |
Dieser Ausdruck gibt „true“ zurück:or(greater(1,10),equals(0,0)) |
equals | Gibt „true“ zurück, wenn zwei Werte gleich sind. | Beispiel: Wenn Parameter1 den Wert „someValue“ aufweist, gibt dieser Ausdruck „true“ zurück:equals(parameters('parameter1'), 'someValue') |
less | Akzeptiert zwei Argumente und gibt „true“ zurück, wenn das erste Argument kleiner als das zweite Argument ist. Hinweis: Die unterstützten Typen sind „integer“, „float“ und „string“. |
Dieser Ausdruck gibt „true“ zurück:less(10,100) |
lessOrEquals | Akzeptiert zwei Argumente und gibt „true“ zurück, wenn das erste Argument kleiner oder gleich dem zweiten Argument ist. Hinweis: Die unterstützten Typen sind „integer“, „float“ und „string“. |
Dieser Ausdruck gibt „true“ zurück:lessOrEquals(10,10) |
greater | Akzeptiert zwei Argumente und gibt „true“ zurück, wenn das erste Argument größer als das zweite Argument ist. Hinweis: Die unterstützten Typen sind „integer“, „float“ und „string“. |
Dieser Ausdruck gibt „false“ zurück:greater(10,10) |
greaterOrEquals | Akzeptiert zwei Argumente und gibt „true“ zurück, wenn das erste Argument größer oder gleich dem zweiten Argument ist. Hinweis: Die unterstützten Typen sind „integer“, „float“ und „string“. |
Dieser Ausdruck gibt „false“ zurück:greaterOrEquals(10,100) |
empty | Gibt „true“ zurück, wenn das Objekt, das Array oder die Zeichenfolge leer ist. | Dieser Ausdruck gibt „true“ zurück:empty('') |
not | Gibt das Gegenteil eines booleschen Werts zurück. | Dieser Ausdruck gibt „true“ zurück:not(contains('200 Success','Fail')) |
if | Gibt einen bestimmten Wert zurück, wenn der Ausdruck „true“ oder „false“ ergibt. | Dieser Ausdruck gibt „yes“ zurück:if(equals(1, 1), 'yes', 'no') |
Anforderungen
Um diese exemplarische Vorgehensweise abzuschließen, müssen Sie Folgendes tun.
- Zugriff auf Power Automate.
- Ihre eigene Kalkulationstabelle mit den später in dieser exemplarischen Vorgehensweise beschriebenen Tabellen. Speichern Sie die Arbeitsmappe an einem Speicherort, z.B. Dropbox oder Microsoft OneDrive, damit Power Automate darauf zugreifen kann.
- Microsoft 365 Outlook (hier wird Outlook verwendet, Sie können in Ihren Flows jedoch jeden beliebigen unterstützten E-Mail-Dienst verwenden.)
Verwenden des or-Ausdrucks
Manchmal muss der Workflow eine Aktion ausführen, wenn der Wert eines Elements „wertA“ oder „wertB“ lautet. Sie können beispielsweise in einem Arbeitsblatt den Status von Aufgaben nachverfolgen. Angenommen, die Tabelle enthält eine Spalte mit dem Namen Status, und die möglichen Werte in der Spalte lauten:
- Abgeschlossen
- blocked
- unnecessary (nicht erforderlich)
- nicht gestartet
Das Arbeitsblatt kann beispielsweise folgendermaßen aussehen:
Sie möchten mithilfe von Power Automate in der oben beschriebenen Tabelle alle Zeilen in der Spalte Status entfernen, die auf abgeschlossen oder nicht erforderlich festgelegt sind.
Erstellen Sie jetzt den Flow.
Beginnen Sie mit einem leeren Flow
Melden Sie sich beim Power Automate Admin-Zentrum an.
Wählen Sie im linken Bereich Meine Flows aus.
Wählen Sie Neuer Flow>Geplanter Cloud-Flow.
Fügen Sie dem Flow einen Trigger hinzu
Benennen Sie den Flow.
Legen Sie fest, dass der Zeitplan den Flow einmal täglich ausführt.
Wählen Sie die Schaltfläche Erstellen, um zum nächsten Schritt zu gelangen.
Anmerkung
- Power Automate verwendet entweder den klassischen Cloud-Flow-Designer oder den neuen modernen Designer mit Copilot-Funktionen. Um herauszufinden, welchen Designer Sie verwenden, wechseln Sie zum Abschnitt Notiz unter Erkunden des Cloud-Flow-Designers.
- Wenn Sie zwischen dem klassischen und dem neuen Designer wechseln, werden Sie aufgefordert, Ihren Flow zu speichern. Sie können erst speichern und wechseln, wenn alle Fehler behoben sind.
Wählen Sie das Arbeitsblatt aus, und rufen Sie alle Zeilen ab
Sie können Copilot verwenden, um den Flow für Sie zu erstellen, oder ihn manuell erstellen.
Einen Flow mit Copilot erstellen
Bitten Sie Copilot, einen Flow für Sie zu erstellen. Geben Sie die folgende Eingabeaufforderung in Copilot ein:
Liste jede Woche Zeilen in einer Excel-Tabelle auf und lösche die Excel-Zeile, wenn die Spalte „Status“ gleich „Erfolgreich“ ist oder die E-Mail der Anspruchsführungskraft jake@contoso.com lautet.
Wählen Sie Übermitteln
aus.
Nachdem Sie die Eingabeaufforderung übermittelt haben, erstellt Copilot den Flow für Sie. Sie müssen Details eingeben, damit der Flow funktioniert, z. B. Parameter für verschiedene Aktionen, die von Copilot hinzugefügt wurden.
Einen Flow manuell erstellen
Alternativ können Sie das folgende Verfahren ausführen, um denselben Flow manuell zu erstellen:
Fügen Sie einen neuen Schritt hinzu, indem Sie das Pluszeichen (+) >Aktion hinzufügen auswählen.
Suchen Sie nach Zeilen>Excel Online (Business)> der Aktion Zeile abrufen, die dem Arbeitsblatt entspricht, das Sie verwenden.
Wenn Sie z. B. Google Tabellen verwenden, wählen Sie Google Tabellen – Zeilen abrufen aus.
Wählen Sie die Aktion Vorhandene Zeilen in einer Tabelle auflisten.
Wählen Sie Standort, Dokumentbibliothek, Datei, und Tabelle aus, das Ihre Daten enthält.
Überprüfen Sie die Statusspalte jeder Zeile
Fügen Sie einen neuen Schritt hinzu, indem Sie das Pluszeichen (+) >Aktion hinzufügen auswählen.
Suchen Sie auf der Anzeige Aktion hinzufügen nach Für alle übernehmen, und wählen Sie dann Für alle übernehmen unter Steuerung aus.
Fügen Sie dem Feld Ausgabe von vorherigen Schritten auswählen das Token Wert hinzu, indem Sie das Blitzsymbol auswählen.
Dieser Wert-Token repräsentiert die Tabellenkalkulationstabelle und alle ihre Daten.
Fügen Sie auf der Karte Für alle übernehmen einen neuen Schritt hinzu, indem Sie das Pluszeichen (+) >Aktion hinzufügen auswählen.
Suchen Sie nach Bedingung, und wählen Sie dann die Steuerung Bedingung.
Fügen Sie den folgenden OR-Ausdruck hinzu. Dieser OR-Ausdruck überprüft den Wert jeder Zeile in der Tabelle.
Wenn die Spalte Status den Wert completed (abgeschlossen) Oderunnecessary (nicht erforderlich) aufweist, wird der OR-Ausdruck als true ausgewertet.
Hier ist ein Beispiel einer Bedingungskarte.
Löschen Sie übereinstimmende Zeilen aus dem Arbeitsblatt
Wählen Sie das Pluszeichen (+) aus, um eine Aktion in der Verzweigung True der Bedingung hinzuzufügen.
Die Verzweigung True wird ausgeführt, wenn die Oder-Bedingung zu true ausgewertet wird.
Suchen Sie nach Excel Online (Business) und wählen Sie dann Zeile löschen aus.
Legen Sie im Bereich Zeile löschen die Kästchen Standort, Dokumentbibliothek, Datei und Tabelle genau so fest, wie Sie diese Kästchen auf der Karte Vorhandene Zeilen in einer Tabelle auflisten weiter oben in diesem Tutorial festgelegt haben.
In der Dropdown-Liste Schlüsselspalte wählen Sie _PowerAppsId_.
Im Feld Schlüsselwert fügen Sie den dynamischen Wert _PowerAppsId_ ein.
Den Flow speichern.
Führen Sie den Flow mit dem „oder“-Ausdruck aus
Nachdem Sie den Flow gespeichert haben, wird er ausgeführt. Wenn Sie das zuvor in diesem Tutorial gezeigte Arbeitsblatt erstellt haben, sieht es nach Abschluss der Ausführung wie folgt aus.
Beachten Sie, dass alle Daten aus Zeilen gelöscht wurden, die in der Spalte Status den Eintrag completed (abgeschlossen) oder unnecessary (nicht erforderlich) enthielten.
Verwenden des „und“-Ausdrucks
Angenommen, Sie haben ein Arbeitsblatt mit zwei Spalten. Die Spaltennamen lauten Status und Assigned (Zugewiesen). Nehmen wir außerdem an, dass alle Zeilen gelöscht werden sollen, wenn die Spalte Status den Wert blocked (Gesperrt) und die Spalte Assigned (Zugewiesen) den Wert John Wonder aufweist. Führen Sie zum Ausführen dieser Aufgabe alle vorherigen Schritte in diesem Tutorial aus. Verwenden Sie jedoch beim Bearbeiten des Bildschirms Bedingung im erweiterten Modus den hier gezeigten and-Ausdruck:
@and(equals(item()?['Status'], 'blocked'), equals(item()?['Assigned'], 'John Wonder'))
Hier ist ein Beispiel einer Bedingungskarte.
Führen Sie den Flow mit dem „und“-Ausdruck aus
Wenn Sie die Schritte in diesem Tutorial befolgt haben, sollte Ihre Tabelle ähnlich wie im folgenden Screenshot aussehen.
Nachdem Ihr Flow ausgeführt wurde, sollte Ihre Tabelle ähnlich wie im folgenden Screenshot aussehen.
Verwenden des „empty“-Ausdrucks
Beachten Sie, dass das Arbeitsblatt jetzt mehrere leere Zeilen enthält. Um diese zu entfernen, bestimmen Sie mithilfe des empty-Ausdrucks alle Zeilen, die in der Spalte Assigned (Zugewiesen) und Status keinen Text enthalten.
Um diese Aufgabe auszuführen, befolgen Sie alle Schritte, die im Abschnitt Verwenden des „und“-Ausdrucks weiter oben in diesem Tutorial aufgeführt sind. Beim Bearbeiten der Bedingung-Karte im erweiterten Modus verwenden Sie folgenden empty-Ausdruck.
@and(empty(item()?['Status']), empty(item()?['Assigned']))
Ihre Bedingung-Karte sollte ungefähr wie im folgenden Screenshot aussehen.
Nachdem Ihr Flow ausgeführt wurde, sollte Ihre Tabelle ähnlich wie im folgenden Screenshot aussehen.
Beachten Sie, dass zusätzliche Zeilen aus der Tabelle entfernt wurden.
Verwenden des „greater“-Ausdrucks
Angenommen, Sie haben Baseballtickets für Ihre Kollegen gekauft und stellen mithilfe eines Arbeitsblatts sicher, dass jeder davon Ihnen die Kosten erstattet. Sie können schnell einen Cloud-Flow erstellen, der täglich an alle, die noch nicht den vollen Betrag gezahlt haben, eine E-Mail sendet.
Verwenden Sie den Ausdruck größer als, um die Mitarbeitenden zu identifizieren, die nicht den vollen Betrag gezahlt haben. Sie können dann automatisch eine Erinnerungs-E-Mail an sie senden.
Dies ist eine Ansicht des Arbeitsblatts.
Dies ist die Implementierung des Ausdrucks größer als, wodurch alle identifiziert werden, die weniger als den fälligen Betrag gezahlt haben.
@greater(item()?['Due'], item()?['Paid'])
Verwenden des „less“-Ausdrucks
Angenommen, Sie haben Baseballtickets für Ihre Kollegen gekauft und stellen mithilfe eines Arbeitsblatts sicher, dass Ihnen jeder bis zum vereinbarten Datum die Kosten erstattet. Sie können einen Cloud-Flow erstellen, der an alle, die nicht den vollen Betrag gezahlt haben, eine Erinnerungs-E-Mail sendet, wenn die Frist zwischen dem aktuellen Datum und dem Fälligkeitsdatum weniger als ein Tag ist.
Verwenden Sie den und-Ausdruck mit dem less-Ausdruck, da zwei Bedingungen überprüft werden müssen.
Zu überprüfende Bedingung | Zu verwendender Ausdruck | Beispiel |
---|---|---|
Wurde der gesamte Fälligkeitsbetrag bezahlt? | greater | @greater(item()?['Due'], item()?['Paid']) |
Liegt das Fälligkeitsdatum weniger als einen Tag in der Zukunft? | less | @less(item()?['DueDate'], addDays(utcNow(),1)) |
Kombinieren des „greater“-Ausdrucks und „less“-Ausdrucks in einem „und“-Ausdruck
Identifizieren Sie mit dem Ausdruck größer als die Mitarbeitenden, die weniger als den vollständigen fälligen Betrag gezahlt haben, und bestimmen Sie mit dem Ausdruck kleiner als, ob der Zeitraum zwischen dem aktuellen Datum und dem Fälligkeitsdatum der Zahlung weniger als ein Tag ist. Anschließend können Sie mit der Aktion E-Mail senden eine Erinnerungs-E-Mail an die Mitarbeiter senden, die nicht den vollständigen Betrag gezahlt haben, wenn die Frist bis zum Fälligkeitsdatum weniger als ein Tag ist.
Dies ist eine Ansicht der Arbeitsblatttabelle.
Dies ist die Implementierung des Ausdrucks und, mit der alle Mitarbeitenden ermittelt werden, die weniger als den fälligen Betrag bezahlt haben, wenn der Zeitraum zwischen dem aktuellen Datum und dem Fälligkeitsdatum weniger als ein Tag ist.
@and(greater(item()?['Due'], item()?['Paid']), less(item()?['dueDate'], addDays(utcNow(),1)))
Verwenden von Funktionen in Ausdrücken
Einige Ausdrücke rufen ihre Werte von Laufzeitaktionen ab, die möglicherweise noch nicht vorhanden sind, wenn die Ausführung eines Cloud-Flows beginnt. Sie können von der Workflowdefinitionssprache bereitgestellte Funktionen verwenden, um in Ausdrücken auf diese Werte zu verweisen oder mit ihnen zu arbeiten. Weitere Informationen. Um mehr zu erfahren, gehen Sie zu Referenzhandbuch zu Workflowausdrucksfunktionen in Azure Logic Apps und Power Automate.