Probleme macro archivage

Bonjour le Forum

J'ai besoin d'un coup de main pour améliorer ma petite macro pour archiver, je m'explique

A ce jour quand je livre sur Atelier , je scanne un numéro de livraison en Cellule U1, ensuite je scanne le numéro de l'atelier en K6, ensuite je clique sur Bouton Archivage , la les elements vont directement sur Onglet Archive,ensuite je clique sur Bouton Saisie, qui efface données cellule U1 ET K6 et je recommence avec un nouveau numéro de livraison

Ce que j'aimerais , si cela est possible, de dire a la macro , quand scan en U1, tu passe ensuite en cellule K6 ,tu archive directement sans clic sur bouton Archivage , ensuite que les deux cellules U1 et K6 ce remette automatiquement a vide et que je remonte directement en cellule U1 et je recommence avec le prochain Bon de Livraison

Je vous joint le fichier et si quelq'un a la solution , je suis preneuse

Vous remercie par avance pour votre aide

Et en attente de réponse

Cordialement

Nathalie

Bonjour,

Regardes du coté de la procédure événementielle "Worksheet_Change()", quand les deux cellules sont renseignées, tu peux déclencher la procédure d'archivage, vider les cellules et sélectionner la première pour la saisie suivante.

Merci pour ta reponse , mais peux tu me dire comment faire

Merci d avance pour ton aide

Cordialement

Nathalie

Bonjour

J'arrive a faire la procedure evenementielle ( voir ci dessous ) , pour passer d une cellule a une autre , mais pour que l'archivage ce fasse directement , la je bloque

Merci pour votre aide pour resoudre mon probleme

"Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)

If Not Application.Intersect(Target, Range("U1")) Is Nothing Then

Range("K6").Select

End If

End Sub"

En attente de reponse

Bonne journée a toute et tous

Nath

Bonjour,

A tester :

Private Sub Worksheet_Change(ByVal Target As Range)

    'seulement K6 ou U1
    If Target.Address(0, 0) = "K6" Or Target.Address(0, 0) = "U1" Then

        'si les deux sont renseignées...
        If Range("K6").Value <> "" And Range("U1").Value <> "" Then

            'appelle la Sub d'archivage
            ArchiveFich1

            'gèle les événements, vide les cellules et sélectionne U1
            Application.EnableEvents = False
            Range("K6").Value = ""
            Range("U1").Value = ""
            Range("U1").Select

        End If

    End If

    'rétabli le gestionnaire dévénements
    Application.EnableEvents = True

End Sub

Bonjour

J'ai testé cela fonctionne mais pas tout a fait comme j'aimerais , il archive bien quand les deux cellules sont non vide , par contre quand je scanne le bl de livraison en U1, cela ne va pas ensuite directement en cellule K6 , tu sais pourquoi

En attente de ta réponse

Nathalie

Testes avec ceci :

Private Sub Worksheet_Change(ByVal Target As Range)

    If Target.Address(0, 0) = "K6" And Target.Value <> "" Then Range("U1").Select
    If Target.Address(0, 0) = "U1" And Target.Value <> "" Then Range("K6").Select

    'seulement K6 ou U1
    If Target.Address(0, 0) = "K6" Or Target.Address(0, 0) = "U1" Then

        'si les deux sont renseignées...
        If Range("K6").Value <> "" And Range("U1").Value <> "" Then

            'appelle la Sub d'archivage
            ArchiveFich1

            'gèle les événements, vide les cellules et sélectionne U1
            Application.EnableEvents = False
            Range("K6").Value = ""
            Range("U1").Value = ""
            Range("U1").Select

        End If

    End If

    'rétabli le gestionnaire dévénements
    Application.EnableEvents = True

End Sub

Super

Cela fonctionne correctement

Merci encore pour ton aide

Nath

Bonjour,

Content de t'avoir aidé

Rechercher des sujets similaires à "probleme macro archivage"