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

Filtrer et supprimer des lignes dans les fichiers Excel

L'exemple ci-dessous explique comment supprimer les lignes indésirables d'un fichier .xlsx et comment filtrer les informations en appliquant des critères spécifiques. Il présente des activités telles que Remove Data Row, Read Range Workbook ou Write Range. Vous pouvez trouver ces activités dans le package UiPath.Excel.Activities.
Le fichier .xlsx utilisé dans l'exemple comprend les colonnes suivantes : Nom (Name), Km, Prix (Price) et TypeVendeur (SellerType). Le processus d'automatisation supprime toutes les lignes qui contiennent la valeur Other et Private Seller de la colonne TypeVendeur (SellerType) et crée une nouvelle feuille avec les résultats filtré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

      carsList

      ApplicationClasseur

      S/O

      inputList

      System.Data.DataTable

      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 Delete Data dans le champ NomComplet.
    • Ajoutez le chemin du fichier .xlsx dans le champ CheminClasseur, en l'occurrence Cars.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 carsList 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

    filterList

    System.String[]

    {"Private Seller", "Other")

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

    • Dans le panneau Propriétés, ajoutez la variable "Cars" 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 inputList dans le champ Table de données.
  6. Placez une activité For Each sous l'activité Read Range.

    • Ajoutez la valeur word dans le champ For Each.
    • Dans le panneau Propriétés, sélectionnez l'option String dans la liste déroulante TypeArgument et ajoutez la variable filterList dans le champ Valeurs.
  7. Sélectionnez le conteneur Corps (Body) de l’activité For Each et créez les variables suivantes :

    Nom de variable

    Types de variables

    Valeur par défaut

    query

    Chaîne de caractères (string)

     

    RowsToDelete

    System.Data.DataRow[]

     

    deletedRows

    Int32

     
  8. Faites glisser une activité Attribuer (Assign) dans le conteneur Faire (Do).

    • Ajoutez la variable query dans le champ À et l'expression string.Format("[SellerType]='{0}'", word) dans le champ Valeur. Cela renvoie les valeurs correspondantes dans la colonne TypeVendeur et les stocke dans la variable string.Format("[SellerType]='{0}'", word). La méthode string.Format est utilisée pour convertir en chaînes les objets de LigneDonnées qui correspondent aux mots saisis dans le filtre.
  9. Ajoutez une autre activité Assign et placez-la sous la première.

    • Ajoutez la variable RowsToDelete dans le champ À et l'expression inputList.Select(query) dans le champ Valeur.
  10. Ajoutez une troisième activité Assign sous les deux premières activités Assign.

    • Ajoutez la variable deletedRows dans le champ À et l'expression RowsToDelete.Count-1 dans le champ Valeur. Cela crée un compteur pour les lignes devant être supprimées.
  11. Placez une activité While sous les activités Assign.

    • Insérez l’expression deletedRows>=0 dans le champ Condition. Cela signifie que les activités de la section Corps (Body) seront exécutées jusqu'à ce que la valeur de la variable deletedRows soit égale à 0.
  12. Insérez une activité Remove Data Row dans la section Corps (Body) de l'activité While.

    • Ajoutez la variable inputList dans le champ Table de données.
    • Ajoutez l’expression RowsToDelete(deletedRows) dans le champ Ligne.
  13. Placez une activité Assign sous l'activité Remove Data Row.

    • Ajoutez la variable deletedRows dans le champ À et l'expression deletedRows-1 dans le champ Valeur. Cela va créer une boucle qui sera exécutée jusqu'à ce que la valeur de la variable deletedRows-1 soit égale à 0.
  14. Revenez au workflow Flowchart.
  15. Faites glisser une activité Excel Application Scope et connectez-la à l'activité Excel Application Scope précédente Supprimer les données.

    • Double-cliquez sur l'activité Excel Application Scope pour l'ouvrir.
    • Dans le panneau Propriétés, ajoutez la valeur Filter Data dans le champ NomComplet.
    • Cochez les cases des options EnregistrementAutomatique et CréerNouveauFichier. Le robot est désormais autorisé à créer un nouveau classeur Excel et à enregistrer automatiquement toutes les modifications qui y sont apportées.
    • Ajoutez la variable carsList dans le champ Classeur.
  16. Faites glisser une activité Close Application dans le conteneur Faire (Do) de l'activité Excel Application Scope.

    • Ouvrez le fichier .xlsx que vous utilisez pour cette automatisation. Car cet exemple est Cars.xlsx.
    • Cliquez sur le bouton Menu Options, sélectionnez l'option Indiquer à l'écran et indiquez le fichier .xlsx.
  17. Faites glisser une activité Excel Write Range sous l'activité Close Application.

    • Dans le panneau Propriétés, ajoutez la variable "Cars2" dans le champ NomFeuille.
    • Ajoutez la variable inputList dans le champ TableDonnées et le chemin "Cars.xlsx" dans le champ CheminClasseur.
    • 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 supprime les données spécifiées et filtre les informations dans une nouvelle feuille de classeur.

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.