Effacement lignes selon ...

Résolu
Bonsoir le forum

Je ne parviens pas au résultat espéré ce soir ...
Dans le fichier suivant : https://www.cjoint.com/c/FCEsTFwb6CI
J'aurais besoin d'effacer en feuille "France" le contenu de toutes les lignes contenant le mot "Erreur" (quelle que soit la colonne) et de stocker les numéros de ligne en mémoire.
Dans un deuxième temps, j'ai besoin d'effacer le contenu des mêmes lignes (en mémoire) sur la feuille USA.

J'ai commencé le code (voir module), mais rien ne se passe ...

Par avance merci bien pour l'aide apportée !

10 réponses

  • Votes
  • Date
  • Date décroissante
  1. Bonjour

    Un essai avec ce que j'ai compris
    http://www.cjoint.com/c/FCEtplyAwHR

    Cdlmnt
    1. Les deux lignes Const coFF et coFU sont inutiles (j'ai changé l'intruction qui calcule lifin) tu peux les supprimer
      Si c'est OK, je peux te commenter un peu le code
      1. 1. J'ai ajouté une ligne qui évitera à la procédure de planter si aucun "Erreur " dans la feuille
        If n = 0 Then Exit Sub
        With Sheets(FB)

        2. j'ai ajouté quelques explications
        http://www.cjoint.com/c/FCEuJ4K0drR

        3. Si c'est fini, merci de mettre le sujet à Résolu (sous le tiitre de ton premier message)

        Cdlmnt
        1. Bonsoir ccm81

          Bravo, tu as très bien saisi la problématique et le code, après adaptation à mon classeur, fonctionne parfaitement, grand merci à toi !

          J'ai encore une requête si possible : est-il possible de réaliser la même opération (en plus de la 1ère) en recherchant "Erreur" à partir de la feuille "USA", et effacer les lignes correspondantes de la feuille "France" ?
          J'ai essayé de comprendre un peu le code mais c'est d'un niveau qui n'est pas le mien : juste un truc : à quoi correspond le "Option Base 1" ? Jamais vu celui là ...

          Vraiment sympa de t'être penché sur mon problème.

          A plus
          1. J'ajoute que dans :
            Const coFF = "B"
            Le mot "Erreur" est susceptible de se trouver dans n'importe qu'elle colonne".
            Possible de le spécifier ?
            A plus
        2. 1. est-il possible de réaliser la même opération (en plus de la 1ère) en recherchant "Erreur" à partir de la feuille "USA", et effacer les lignes correspondantes de la feuille "France"
          Est ce la même procédure qui doit faire les deux opérations ?
          1. Oui idéalement
            J'ai essayé de recopier le code et l'adapter (notamment à partir d'une autre procédure que tu avais fait en 2011, mais sans succès).
            A plus
        3. Set obj = .Rows(liFF).Find(E, , , xlWhole)
          recherche E dans toute la ligne liFF
          Option Explicit est une directive qui impose aux tableaux déclarés de commencer à l'indice 1
          1. Ah OK.
            Je ne comprends pas l'intérêt de ces lignes :
            Const lidebFF = 3
            Const coFF = "B"
            Je comprends que tu commences la recherche en ligne 3 et en colonne B.
            Pardon de t'embêter mais j'aime bien comprendre pour progresser en VB ... désolé !
        4. Cette fois c'est carton plein.

          Mille mercis ça va servir tous les jours à mon équipe.
          Je n'y serais par parvenu c'était quand même très difficile.

          Bonne nuit et encore un grand merci pour ton dévouement et ta facilité à t'adapter aux demandes.
          1. Bonjour ccm81

            J'ai tout testé ce matin au lever.
            Il n'y a aucun problème, mes lignes sont bien supprimées de part et d'autres.
            En cas d'absence d'erreur, rien ne se passe, c'est impeccable.

            Et merci pour les explications détaillées sur la feuille, j'ai tout compris (faut pas se mélanger les pinceaux avec les constantes !)

            C'était d'un bon niveau, sans ton aide je n'y serai pas parvenu.

            Bonne journée à toi, mille mercis cher ami !
            Au plaisir
            1. (faut pas se mélanger les pinceaux avec les constantes !)
              Oui mais, ces constantes sont là pour éviter d'avoir à toucher au corps de la procédure (un malheur est si vites arrivé) au cas où la configuration des feuilles serait modifiée

              Bonne journée
              1. C'est exact !
                J'ai appris beaucoup depuis hier merci bien