Supprimer une ligne en fonction des données d'une cellule [Résolu/Fermé]

Signaler
Messages postés
273
Date d'inscription
samedi 10 décembre 2011
Statut
Membre
Dernière intervention
13 novembre 2020
-
Messages postés
273
Date d'inscription
samedi 10 décembre 2011
Statut
Membre
Dernière intervention
13 novembre 2020
-
Bonjour,
Toujours dans l'amélioration de mon tableau, qui a énormément évolué, je rencontre un difficulté dans la mise en place de macro trouvée sur le forum, pour supprimer une ligne en fonction des données d'une cellule.
le souci que je rencontre, sur la feuille "Récapitulatif", là où je souhaite activée ma macro
"Sub Supprimerligne()

Dim a As Long
Dim b As Long

a = Range("A65536").End(xlUp).Row

For b = a To 1 Step -1

If Cells(b, 7).Value = "DISPO" Then

Rows(b).Delete

End If

Next b

End Sub"
c'est que les terme sont des valeurs mis suite à une formule. Est ce à cause de cela que ça ne fonctionne pas ?

Dans la colonne "G" de la feuille "Récapitulatif", je souhaiterai que les lignes avec en colonne G "DISPO CHEZ MOI" n'apparaissent pas.

A savoir, que le ficihier est remis à jour à chaque fois par une actualisation de la feuille 3.

Ci joint, le fichier complet avec les macros.
Merci d'avance pour votre aide.

Le Fichier: https://www.cjoint.com/c/CAjo2V8Sr1X


5 réponses

Messages postés
23816
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
26 janvier 2021
6 597
Bonjour,

et si dans le code tu remplaces DISPO par DISPO CHEZ MOI ça donne quoi ?
eric
Messages postés
273
Date d'inscription
samedi 10 décembre 2011
Statut
Membre
Dernière intervention
13 novembre 2020
10
Bonjour Eriiic,
Merci de ta réponse rapide.
Je viens d'essayer en mettant "DISPO CHEZ MOI", ça ne marche pas.

Dans la macro, j'ai également essayé "4" à la place de "7"
dans If Cells(b, 7).Value = "DISPO" Then
car je ne savais pas s'il fallait compter les colonne masquées ou non, mais pas plus de résultat.
Est-ce que cela peut venir du fait que dans la colonne "G" il y a une formule. Je m'explique si je fais "CTRL" "DISPO CHEZ MOI" ça ne va rien trouvé, sauf, si dans les otpions je mets rechercher dans "Valeurs".
Est ce identique pour les macros ?
Merci.
Bien cordialement
Messages postés
23816
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
26 janvier 2021
6 597
Re,

a = Range("A65536").End(xlUp).Row
Ta colonne A est vide. Comment veux-tu qu'il trouve la dernière ligne utilisée ?
Il faut le faire sur B, et même mieux : sur G, tu gagneras qcq tests.

eric
Messages postés
273
Date d'inscription
samedi 10 décembre 2011
Statut
Membre
Dernière intervention
13 novembre 2020
10
Eriic,
Mille mercis de ton aide. L'erreur était tellement "grosse", que je ne l'ai pas vu.
Je vais sérieusement me pencher sur les "macros", c'est très efficace.
Sans vouloir abuser, si je veux ajouter en suppression "AUTRE FOURNISSEUR" dois je recopier une autre fois la macro entière, ou mettre ainsi:
If Cells(b, 7).Value = "DISPO";"AUTRE FOURNISSEUR" Then

Ci-dessous le fichier avec la macro actuelle pour des membres qui seraient intéressés.

https://www.cjoint.com/c/CAjtqvuXcyK


Bien cordialement
Messages postés
23816
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
26 janvier 2021
6 597
Re,

If Cells(b, 7) = "DISPO" or Cells(b, 7) = "AUTRE FOURNISSEUR" Then

eric
Messages postés
273
Date d'inscription
samedi 10 décembre 2011
Statut
Membre
Dernière intervention
13 novembre 2020
10
Mille mercis Eriiic,
je te souhaite une très bonne soirée.
C'est le top pour moi.
Au plaisir.
Cdt