XL 2019 Amélioration Macro

  • Initiateur de la discussion Initiateur de la discussion Simon M
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Simon M

XLDnaute Nouveau
Bonjour, voici, mon problème.
Je cherche a dire a ma macro "Tout" de supprimer des lignes celon un critère, ici "Magasin" dasn la colonne "Emplacement".
Cependant je n'ai pas toujours de lignes avec ce critère, ce qui stoppe la macro.
Comment lui dire de passer outre s'il n'y a pas de lignes avec ce critère?

Voici le procéder :
1 - On tape des données dans recherche (Commande)
2 - On utilise les bouton de Macro "Filtrer la recherche" et "Impression" pour sortir un bon de préparation.
3 - On fait ca commande
4 - On appuie sur "Sortie général", c'est la Macro "Tout" qui :
-Supprime les lignes avec le critère "Magasin" dans la colonne "Emplacement". Et s'il n'y as pas de critère, passer à l'étape suivante.
-Recopie les données souhaité dans le tableau "Journal_ES"( il faudrait aussi y greffer la macro "Dates" que j'ai créer)

Voila, merci ^^
 

Pièces jointes

Solution
Merci, pour votre réponse.
J'ai trouver une autre solution qui marche bien ^^
Je fait un filtre différent de "Magasin"
Je fait le transfère les données Puis sélectionne les cellules vides dans "Dates" afin d'y mettre la date du jour puis je sélectionne les cellules vides dans "client/fournisseur" afin que l'on puisse venir saisir le nom du client
Voila, merci a vous ^^
Bonjour,
Problème avec le classeur ( il doit manquer qq chose ):
Pas de Commande dans la feuille recherche.

Avant de manipuler un databody range, il faut vérifier s'il existe :
If not .......databodyrange is nothing then ....

🤔
 
Dernière édition:
Avec le trap des erreurs :

VB:
Sub Menage()
   
    With Range("Recherche").ListObject
        If Not .DataBodyRange Is Nothing Then
            .Range.AutoFilter Field:=4, Criteria1:="Magasin"
            On Error Resume Next
                .DataBodyRange.Rows.SpecialCells(xlCellTypeVisible).Select
                If Err = 0 Then
                    Application.DisplayAlerts = False
                        .DataBodyRange.Rows.SpecialCells(xlCellTypeVisible).Delete
                    Application.DisplayAlerts = True
                End If
            On Error GoTo 0
            .HeaderRowRange.Select
            ActiveSheet.ShowAllData
        End If
    End With
   
End Sub
 
Dernière édition:
Merci, pour votre réponse.
J'ai trouver une autre solution qui marche bien ^^
Je fait un filtre différent de "Magasin"
Je fait le transfère les données Puis sélectionne les cellules vides dans "Dates" afin d'y mettre la date du jour puis je sélectionne les cellules vides dans "client/fournisseur" afin que l'on puisse venir saisir le nom du client
Voila, merci a vous ^^
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
5
Affichages
286
Réponses
40
Affichages
3 K
Réponses
7
Affichages
480
Réponses
7
Affichages
164
Retour