Supprimer ligne ou colonne selon condition VBA [Résolu]

Signaler
Messages postés
49
Date d'inscription
dimanche 1 février 2009
Statut
Membre
Dernière intervention
21 juin 2020
-
Messages postés
49
Date d'inscription
dimanche 1 février 2009
Statut
Membre
Dernière intervention
21 juin 2020
-
Bonjour,

Je cherche une formule VBA qui supprime les lignes suivant plusieurs conditions.

Exemple : supprimer les lignes (toto, tata). Supprimer les colonnes (bobo, bac).

Merci pour votre aide et bon courage (confinement).

Cordialement,

Zizou

6 réponses

Messages postés
11531
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
12 juillet 2020
659
bonjour, as-tu essayé
rows(toto).delete
columns(bobo).delete
Messages postés
49
Date d'inscription
dimanche 1 février 2009
Statut
Membre
Dernière intervention
21 juin 2020
1
Bonjour yg_be,
J'ai essayé de mettre en place ta proposition sans succès (je ne sais pas bien comment mettre en place).
Pourrais-tu SVP me montrer dans ce fichier : https://www.cjoint.com/c/JDrgBF84dzr
Contenant des mots ou des chiffres
Je te souhaite une excellente journée.
Cordialement,
Zizou
Messages postés
11531
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
12 juillet 2020
659
faut-il uniquement chercher dans la première ligne et la première colonne?
faut-il chercher les cellules ayant comme contenu exactement le mot cherché?
Messages postés
11531
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
12 juillet 2020
659 >
Messages postés
11531
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
12 juillet 2020

peut-être:
Option Explicit
Const titrecolonne As String = "enfant,genre"
Const titreligne As String = "chap,leon"
Private Sub dd()
Dim cel As Range, wb As Worksheet
Dim titrescolonne, titresligne, titre
Set wb = ThisWorkbook.Sheets("Data1")
titrescolonne = Split(titrecolonne, ",")
titresligne = Split(titreligne, ",")
For Each cel In Intersect(wb.UsedRange, wb.Rows(1))
    For Each titre In titrescolonne
        If UCase(cel) = UCase(titre) Then
            cel.EntireColumn.Delete
            Exit For
        End If
    Next titre
Next cel
For Each cel In Intersect(wb.UsedRange, wb.Columns(1))
    For Each titre In titresligne
        If UCase(cel) = UCase(titre) Then
            cel.EntireRow.Delete
            Exit For
        End If
    Next titre
Next cel
End Sub
Messages postés
49
Date d'inscription
dimanche 1 février 2009
Statut
Membre
Dernière intervention
21 juin 2020
1
Merci pour ta réponse,
C'est génial ça fonctionne, serait-il possible de saisir le mot et/ou le chiffre pour la suppression de la ligne et/ou de la colonne?
Merci yg_be et je te souhaite une excellente journée.
Cordialement,
zizou
Messages postés
11531
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
12 juillet 2020
659
cela me semble possible, comment souhaites-tu que cela se passe?
Messages postés
49
Date d'inscription
dimanche 1 février 2009
Statut
Membre
Dernière intervention
21 juin 2020
1
Par saisi du mot et/ou chiffre...
Messages postés
11531
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
12 juillet 2020
659
alors ainsi:
Private Sub did()
Dim cel As Range, wb As Worksheet
Dim titcolonne, titligne
Set wb = ThisWorkbook.Sheets("Data1")
titcolonne = InputBox("nom de colonne à supprimer")
titligne = InputBox("nom de ligne à supprimer")
If VarType(titcolonne) <> vbBoolean Then
    For Each cel In Intersect(wb.UsedRange, wb.Rows(1))
        If UCase(cel) = UCase(titcolonne) Then
            cel.EntireColumn.Delete
            Exit For
        End If
    Next cel
End If
If VarType(titligne) <> vbBoolean Then
    For Each cel In Intersect(wb.UsedRange, wb.Columns(1))
            If UCase(cel) = UCase(titligne) Then
                cel.EntireRow.Delete
                Exit For
            End If
    Next cel
End If
End Sub
Messages postés
49
Date d'inscription
dimanche 1 février 2009
Statut
Membre
Dernière intervention
21 juin 2020
1
Sincèrement, tu es génial... merci de ton aide.

C'est possible de l'associer à un combobox?

Cordialement,

zizou
Messages postés
11531
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
12 juillet 2020
659
peux-tu essayer de décrire précisément et en détail ce dont tu as besoin dès le départ?
Messages postés
49
Date d'inscription
dimanche 1 février 2009
Statut
Membre
Dernière intervention
21 juin 2020
1
Oui désolé,
JDrnP513o0r_Formule-Suppression-VBA-.xlsm