Supprimer une ligne en fonction des données d'une cellule [Résolu/Fermé]
Signaler
kalystha
kalystha
- Messages postés
- 273
- Date d'inscription
- samedi 10 décembre 2011
- Statut
- Membre
- Dernière intervention
- 13 novembre 2020
kalystha
- 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
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
A voir également:
- Supprimer une ligne en fonction des données d'une cellule
- Supprimer une ligne en fonction des données d'une cellule ✓ - Forum - Excel
- Supprimer des lignes en fonction des valeurs d'une colonne ✓ - Forum - VB / VBA
- Colorer une ligne en fonction du contenu d'une cellule dans excel ✓ - Forum - Excel
- Colorer une ligne en fonction des valeurs de deux cellules ✓ - Forum - VB / VBA
- Dupliquer valeur sur plusieurs lignes en fonction du contenu d’une cellule ✓ - Forum - Excel
5 réponses
eriiic
- Messages postés
- 23816
- Date d'inscription
- mardi 11 septembre 2007
- Statut
- Contributeur
- Dernière intervention
- 26 janvier 2021
Bonjour,
et si dans le code tu remplaces DISPO par DISPO CHEZ MOI ça donne quoi ?
eric
et si dans le code tu remplaces DISPO par DISPO CHEZ MOI ça donne quoi ?
eric
kalystha
- Messages postés
- 273
- Date d'inscription
- samedi 10 décembre 2011
- Statut
- Membre
- Dernière intervention
- 13 novembre 2020
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
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
eriiic
- Messages postés
- 23816
- Date d'inscription
- mardi 11 septembre 2007
- Statut
- Contributeur
- Dernière intervention
- 26 janvier 2021
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
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
kalystha
- Messages postés
- 273
- Date d'inscription
- samedi 10 décembre 2011
- Statut
- Membre
- Dernière intervention
- 13 novembre 2020
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
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