XL 2019 Amélioration Macro

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

  • Suivi général - réussie.xlsm
    152.8 KB · Affichages: 19
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 ^^

fanch55

XLDnaute Barbatruc
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:

fanch55

XLDnaute Barbatruc
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:

Simon M

XLDnaute Nouveau
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 ^^
 

Discussions similaires

Statistiques des forums

Discussions
311 725
Messages
2 081 941
Membres
101 848
dernier inscrit
Djigbenou