Activités (Activities)
Plus récente (Latest)
False
Image de fond de la bannière
Activités de productivité
Dernière mise à jour 26 avr. 2024

Trier les données dans les fichiers Excel

L'exemple ci-dessous explique comment traiter une table .xlsx de manière à afficher les données de toutes les lignes par ordre croissant, sans qu'il y ait de doublon.

Il présente des activités telles que Remove Data Row, Read Range ou Sort Table. Vous pouvez trouver ces activités dans le package UiPath.Excel.Activities.

L'exemple ci-dessous utilise une table comprenant cinq colonnes : id, Prénom (first-name), Nom (last-name), e-mail et Sexe (gender). Les entrées du tableau sont classées par ordre décroissant. Certaines des lignes apparaissent plusieurs fois dans la feuille de calcul. À l'aide d'un processus d'automatisation, les données sont triées par ordre croissant et tous les doublons sont supprimés.

Voici comment le processus d'automatisation peut être créé :

  1. Ouvrez Studio et créez un nouveau Processus nommé par défaut Principal.

    Remarque : veillez à ajouter les fichiers .xlsx que vous souhaitez utiliser dans le dossier du projet. Vous pouvez également utiliser le fichier fourni par nos soins, en téléchargeant l'exemple disponible en bas de cette page.
  2. Faites glisser un Flowchart dans le panneau Concepteur de workflow.

    • Créez les variables suivantes :

      Nom de variable

      Types de variables

      Valeur par défaut

      existingColumns

      ApplicationClasseur

      S/O
  3. Faites glisser une activité Excel Application Scope dans le Flowchart et connectez-la au nœud initial.

    • Double-cliquez sur l'activité Excel Application Scope pour l'ouvrir.
    • Dans le panneau Propriétés, ajoutez la valeur Sorting rows ascending dans le champ NomComplet.
    • Ajoutez le chemin du fichier .xlsx dans le champ CheminClasseur, en l'occurrence Book.xlsx.
    • Cochez les cases des options EnregistrementAutomatique, CréerNouveauFichier et Visible. Le robot est désormais autorisé à créer un nouveau classeur Excel, à enregistrer automatiquement toutes les modifications apportées à celui-ci et à ouvrir le fichier Excel au premier plan lorsqu'il effectue des actions dessus.
    • Ajoutez la variable existingColumns dans le champ Classeur.
  4. Sélectionnez la séquence Faire (Do) dans l'activité Excel Application Scope et créez la variable suivante :

    Nom de variable

    Types de variables

    Valeur par défaut

    descendingOrder

    System.Data.DataTable

    S/O
  5. Faites glisser une activité Read Range dans la séquence Do (Faire).

    • Dans le panneau Propriétés, ajoutez la variable "Sheet1" dans le champ NomFeuille.
    • Cochez la case AjouterEnTêtes pour que la première ligne du tableau soit considérée comme des en-têtes.
    • Ajoutez la variable descendingOrder dans le champ Table de données.
  6. Placez une activité Sort Table sous l'activité Read Range.

    • Dans le panneau Propriétés, ajoutez la variable "id" dans le champ NomColonne.
    • Dans la liste Ordre, sélectionnez Ascending.
    • Ajoutez la valeur "Sheet1" dans le champ NomFeuille.
    • Ajoutez la valeur "Table1" dans le champ NomTable.
  7. Revenez au workflow Flowchart.
  8. Faites glisser une activité Excel Application Scope et connectez-la à l'activité Excel Application Scope précédente.

    • Double-cliquez sur l'activité Excel Application Scope pour l'ouvrir.
    • Dans le panneau Propriétés, ajoutez la valeur Deleting duplicates dans le champ NomComplet.
    • Cochez les cases des options EnregistrementAutomatique, CréerNouveauFichier et Visible. Le robot est désormais autorisé à créer un nouveau classeur Excel, à enregistrer automatiquement toutes les modifications apportées à celui-ci et à ouvrir le fichier Excel au premier plan lorsqu'il effectue des actions dessus.
    • Ajoutez la variable existingColumns dans le champ Classeur.
  9. Faites glisser une activité Read Range dans la séquence Do (Faire).

    • Dans le panneau Propriétés, ajoutez la variable "Sheet1" dans le champ NomFeuille.
    • Cochez la case AjouterEnTêtes pour que la première ligne du tableau soit considérée comme des en-têtes.
    • Ajoutez la variable descendingOrder dans le champ Table de données.
  10. Placez une activité While sous l'activité Read Range.

    • Créez la variable suivante :

      Nom de variable

      Types de variables

      Valeur par défaut

      rowIndex

      Int32

      0

    • Ajoutez l’expression rowIndex+1 < descendingOrder.Rows.Count dans le champ Condition. Cette expression permet de traiter l'intégralité de la table et d'exécuter la boucle While jusqu'à ce que l'expression row index +1 soit inférieure au nombre total de lignes.
  11. Ajoutez un conteneur Sequence dans le corps de l'activité While.

    • Créez les variables suivantes :

      Nom de variable

      Types de variables

      Valeur par défaut

      row

      System.Data.DataRow

      S/O

      rowNext

      System.Data.DataRow

      S/O
  12. Placez une activité Assign dans le conteneur Sequence précédemment créé.

    • Ajoutez la variable row dans le champ À et l'expression descendingOrder.Rows(rowIndex) dans le champ Valeur. Cela vous permettra d'attribuer les informations contenues dans une ligne à la variable de ligne correspondant à son index.
  13. Ajoutez une autre activité Attribuer (Assign) et placez-la sous la précédente.

    • Ajoutez la variable rowNext dans le champ À et l'expression descendingOrder.Rows(rowIndex+1) dans le champ Valeur. Cela va attribuer la valeur de la ligne suivante à la variable rowNext et vous permettra ainsi de parcourir toute la table.
  14. Faites glisser une activité If sous l’activité Assign.

    • Ajoutez l’expression row(0).ToString=rowNext(0).Tostring dans le champ Condition. Cette condition vérifie que les données contenues dans la variable row soient identiques à celles de la variable rowNext.
  15. Insérez une activité Remove Data Row dans le champ Alors (Then) de l'activité If.

    • Ajoutez la variable descendingOrder dans le champ TableDonnées et la variable rowNext dans le champ Ligne.
  16. Placez une activité Assign dans le champ Sinon (Else) de l'activité If.

    • Ajoutez la variable rowIndex dans le champ À et l'expression rowIndex+1 dans le champ Valeur.
  17. Ajoutez une activité Write Range sous l'activité While.

    • Ajoutez le nom "Sheet2" dans le champ NomFeuille, la valeur "A1" dans le champ CelluleDépart et la variable descendingOrder dans le champ TableDonnées.
    • Cochez la case AjouterEnTêtes pour que la première ligne du tableau soit considérée comme des en-têtes.
  18. Exécutez le processus. Le processus d'automatisation crée une nouvelle feuille qui affiche les données par ordre croissant sans doublons.

Cette page vous a-t-elle été utile ?

Obtenez l'aide dont vous avez besoin
Formation RPA - Cours d'automatisation
Forum de la communauté UiPath
Logo Uipath blanc
Confiance et sécurité
© 2005-2024 UiPath. All rights reserved.