Effacement lignes selon ...

Résolu/Fermé
touroul Messages postés 465 Date d'inscription mardi 5 octobre 2010 Statut Membre Dernière intervention 29 janvier 2024 - 30 mars 2016 à 20:46
touroul Messages postés 465 Date d'inscription mardi 5 octobre 2010 Statut Membre Dernière intervention 29 janvier 2024 - 31 mars 2016 à 14:08
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

ccm81 Messages postés 10851 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 16 avril 2024 2 404
30 mars 2016 à 21:15
Bonjour

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

Cdlmnt
1
ccm81 Messages postés 10851 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 16 avril 2024 2 404
30 mars 2016 à 22:17
Comme ça ?
http://www.cjoint.com/c/FCEurb8k1CR
1
ccm81 Messages postés 10851 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 16 avril 2024 2 404
Modifié par ccm81 le 30/03/2016 à 22:22
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
ccm81 Messages postés 10851 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 16 avril 2024 2 404
30 mars 2016 à 22:39
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

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
touroul Messages postés 465 Date d'inscription mardi 5 octobre 2010 Statut Membre Dernière intervention 29 janvier 2024 15
30 mars 2016 à 21:52
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
0
touroul Messages postés 465 Date d'inscription mardi 5 octobre 2010 Statut Membre Dernière intervention 29 janvier 2024 15
30 mars 2016 à 22:01
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
0
ccm81 Messages postés 10851 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 16 avril 2024 2 404
30 mars 2016 à 22:02
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 ?
0
touroul Messages postés 465 Date d'inscription mardi 5 octobre 2010 Statut Membre Dernière intervention 29 janvier 2024 15
30 mars 2016 à 22:06
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
0
ccm81 Messages postés 10851 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 16 avril 2024 2 404
Modifié par ccm81 le 30/03/2016 à 22:06
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
0
touroul Messages postés 465 Date d'inscription mardi 5 octobre 2010 Statut Membre Dernière intervention 29 janvier 2024 15
30 mars 2016 à 22:17
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é !
0
touroul Messages postés 465 Date d'inscription mardi 5 octobre 2010 Statut Membre Dernière intervention 29 janvier 2024 15
30 mars 2016 à 22:26
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.
0
touroul Messages postés 465 Date d'inscription mardi 5 octobre 2010 Statut Membre Dernière intervention 29 janvier 2024 15
31 mars 2016 à 07:07
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
0
ccm81 Messages postés 10851 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 16 avril 2024 2 404
Modifié par ccm81 le 31/03/2016 à 14:04
(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
0
touroul Messages postés 465 Date d'inscription mardi 5 octobre 2010 Statut Membre Dernière intervention 29 janvier 2024 15
31 mars 2016 à 14:08
C'est exact !
J'ai appris beaucoup depuis hier merci bien
0