Aktivitäten
Neuestes
False
Bannerhintergrundbild
Produktivitätsaktivitäten
Letzte Aktualisierung 26. Apr. 2024

Sortieren von Daten in Excel-Dateien

Das folgende Beispiel veranschaulicht, wie eine .xlsx-Tabelle verarbeitet werden kann, um die Daten in allen Zeilen in aufsteigender Reihenfolge und ohne Duplikate anzuzeigen.

Es werden Aktivitäten wie Remove Data Row, Read Range oder Sort Table angezeigt. Sie finden diese Aktivitäten im Paket UiPath.Excel.Activities.

Das folgende Beispiel verwendet eine Tabelle mit fünf Spalten – id, first-name, last-name, email und gender. Die Einträge in der Tabelle sind in absteigender Reihenfolge angeordnet. Einige der Zeilen werden mehrmals in der Kalkulationstabelle angezeigt. Mithilfe eines Automatisierungsprozesses werden Daten in aufsteigender Reihenfolge sortiert und alle Duplikate werden entfernt.

So kann der Automatisierungsprozess erstellt werden:

  1. Öffnen Sie Studio und erstellen Sie einen neuen Prozess, der standardmäßig als Main benannt ist.

    Hinweis: Stellen Sie sicher, dass Sie die .xlsx-Dateien hinzufügen, die Sie im Projektordner verwenden möchten. Sie können auch die von uns zur Verfügung gestellte Datei verwenden, indem Sie das Beispiel herunterladen, das Sie am Ende dieser Seite finden.
  2. Ziehen Sie ein Flowchart in den Workflow-Designer.

    • Erstellen Sie die folgenden Variablen:

      Variablenname

      Variablentyp

      Standardwert

      existingColumns

      WorkbookApplication

      Keine Angabe
  3. Ziehen Sie eine Excel Application Scope-Aktivität in das Flowchart und verbinden Sie diese mit dem Startknoten.

    • Doppelklicken Sie auf die Aktivität Excel Application Scope, um sie zu öffnen.
    • Fügen Sie im Eigenschaftenbereich den Namen Sorting rows ascending in das Feld Anzeigename ein.
    • Fügen Sie den Pfad der .xlsx-Datei in das Feld DateiPfad ein, in diesem Fall Book.xlsx.
    • Aktivieren Sie das Kontrollkästchen für die Optionen AutomatischSpeichern, NeueDateiErstellen und Sichtbar. Der Roboter kann jetzt eine neue Excel-Arbeitsmappe erstellen, um automatisch alle daran vorgenommenen Änderungen zu speichern und die Excel-Datei im Vordergrund öffnen, während er Aktionen daran durchführt.
    • Fügen Sie die Variable existingColumns in das Feld Arbeitsmappe ein.
  4. Wählen Sie die Do-Sequence innerhalb der Aktivität Excel Application Scope aus und erstellen Sie die folgende Variable:

    Variablenname

    Variablentyp

    Standardwert

    descendingOrder

    System.Data.DataTable

    Keine Angabe
  5. Ziehen Sie eine Read Range-Aktivität in die Do-Sequence.

    • Fügen Sie im Eigenschaftenbereich den Namen "Sheet1" in das Feld Blattname ein.
    • Aktivieren Sie das Kontrollkästchen HeaderHinzufügen, um die erste Zeile der Tabelle als Header zu definieren.
    • Fügen Sie die Variable descendingOrder in das Feld Datentabelle ein.
  6. Platzieren Sie eine Sort Table-Aktivität unter die Read Range-Aktivität.

    • Fügen Sie im Eigenschaftenbereich den Namen "id" in das Feld Spaltenname ein.
    • Wählen Sie Ascending aus der Sortierliste aus.
    • Fügen Sie den Namen "Sheet1" in das Feld Blattname ein.
    • Fügen Sie den Namen "Table1" in das Feld Tabellenname ein.
  7. Kehren Sie zum Flowchart-Workflow zurück.
  8. Ziehen Sie eine Excel Application Scope-Aktivität und verbinden Sie diese mit der vorherigen Excel Application Scope-Aktivität.

    • Doppelklicken Sie auf die Aktivität Excel Application Scope, um sie zu öffnen.
    • Fügen Sie im Eigenschaftenbereich den Namen Deleting duplicates in das Feld Anzeigename ein.
    • Aktivieren Sie das Kontrollkästchen für die Optionen AutomatischSpeichern, NeueDateiErstellen und Sichtbar. Der Roboter kann jetzt eine neue Excel-Arbeitsmappe erstellen, um automatisch alle daran vorgenommenen Änderungen zu speichern und die Excel-Datei im Vordergrund öffnen, während er Aktionen daran durchführt.
    • Fügen Sie die Variable existingColumns in das Feld Arbeitsmappe ein.
  9. Ziehen Sie eine Read Range-Aktivität in die Do-Sequence.

    • Fügen Sie im Eigenschaftenbereich den Namen "Sheet1" in das Feld Blattname ein.
    • Aktivieren Sie das Kontrollkästchen HeaderHinzufügen, um die erste Zeile der Tabelle als Header zu definieren.
    • Fügen Sie die Variable descendingOrder in das Feld Datentabelle ein.
  10. Setzen Sie eine While-Aktivität unter die Read Range-Aktivität.

    • Erstellen Sie die folgende Variable:

      Variablenname

      Variablentyp

      Standardwert

      rowIndex

      Int32

      0

    • Fügen Sie den Ausdruck rowIndex+1 < descendingOrder.Rows.Count in das Feld Bedingung ein. Dieser Ausdruck verarbeiten die gesamte Tabelle und ermöglicht Ihnen die Ausführung der While-Schleife, bis der row index +1 kleiner als die Gesamtzahl der Zeilen ist.
  11. Fügen Sie einen Sequence-Container in den Textkörper der While-Aktivität ein.

    • Erstellen Sie die folgenden Variablen:

      Variablenname

      Variablentyp

      Standardwert

      row

      System.Data.DataRow

      Keine Angabe

      rowNext

      System.Data.DataRow

      Keine Angabe
  12. Platzieren Sie eine Assign-Aktivität in den zuvor erstellten Sequence-Container.

    • Fügen Sie die Variable row in das Feld An ein und den Ausdruck descendingOrder.Rows(rowIndex) in das Feld Wert. So können Sie die in einer Zeile enthaltenen Informationen der Zeilenvariablen entsprechend ihrem Index zuordnen.
  13. Ziehen Sie eine weitere Assign-Aktivität unter die vorherige.

    • Fügen Sie die Variable rowNext in das Feld An ein und den Ausdruck descendingOrder.Rows(rowIndex+1) in das Feld Wert. Dadurch wird der Wert der folgenden Zeile der Variablen rowNext zugewiesen, so dass Sie die gesamte Tabelle durchlaufen können.
  14. Fügen Sie eine If-Aktivität unter der Assign-Aktivität hinzu.

    • Fügen Sie den Ausdruck row(0).ToString=rowNext(0).Tostring in das Feld Bedingung ein. Diese Bedingung überprüft, ob die in der Variablen row enthaltenen Daten mit denen in der Variablen rowNext identisch sind.
  15. Ziehen Sie eine Remove Data Row-Aktivität in das Then-Feld der If-Aktivität.

    • Fügen Sie die Variable descendingOrder in das Feld Datentabelle ein und die Variable rowNext in das Feld Zeile.
  16. Platzieren Sie eine Assign-Aktivität im Else-Feld der If-Aktivität.

    • Fügen Sie die Variable rowIndex in das Feld An ein und den Ausdruck rowIndex+1 in das Feld Wert.
  17. Fügen Sie eine Write Range-Aktivität unterhalb der While-Aktivität hinzu.

    • Fügen Sie den Namen "Sheet2" in das Feld Blattname ein, den Wert "A1" in das Feld Startelement und die Variable descendingOrder in das Feld Datentabelle.
    • Aktivieren Sie das Kontrollkästchen HeaderHinzufügen, um die erste Zeile der Tabelle als Header zu definieren.
  18. Führen Sie den Prozess aus. Der Automatisierungsprozess erstellt ein neues Blatt, das die Daten in aufsteigender Reihenfolge ohne Duplikate anzeigt.

War diese Seite hilfreich?

Hilfe erhalten
RPA lernen – Automatisierungskurse
UiPath Community-Forum
UiPath Logo weiß
Vertrauen und Sicherheit
© 2005-2024 UiPath. All rights reserved.