Retrouver une cellule dans une liste par un scan douchette

  • Initiateur de la discussion Initiateur de la discussion APEED
  • 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 !

APEED

XLDnaute Nouveau
Bonjour,

Je vais bientôt faire l'inventaire de la ludothèque associative dans laquelle je suis bénévole.
J'aimerai mettre en place un fichier excel qui me permette de:
-m'envoyer directement à la ligne du jeu scanné et de colorier cette nul ou de marquer dans la colonne "A" "OK"
-remettre à 0 la cellule du scan H5 tout en maintenant la validation des autres lignes précédemment scannées.

Je pense que je dois passer par une macro mais j'avoue que je ne suis pas très douée pour ça.

Lorsque je scanne le code barre d'un jeu, c'est le code du jeu qui apparait dans la cellule "SCAN"

Je vous mets mon document en pièce jointe et vous remercie par avance
 

Pièces jointes

Bonjour Bruno, en faite le principe c'est que lors du scanne a l'envoi il doit y avoir 2 personnes 1 préparateur et 1 vérificateur (bien sûr différent) et un livreur.
Donc le préparateur il scanne son code (code avec @) ensuite il scanne les articles, et ce stade la pour obliger l'utilisateur a scanner le code du vérificateur et celui du livreur j'ai pas trouver le moyen que lors du scanne au retour, donc avant de scanner les articles au retour les cellules nom du vérificateur et nom du livreur dans la partie préparation et livraison et la cellule nom du livreur et nom du vérificateur composition dans la partie retour et vérification doivent être remplis, après pour vérifier la présence du nom vérificateur consommation j'ai pas trouvé le moyen mais je pense comme vous avez dit un bouton validation c une bonne idée qui peut être créer pour les deux un bouton pour valider l'envoi et qui vérifiera la présence des champs obligatoires et donnera la main pour le scanne au retour et un autre bouton pour valider les autres champs et enregistrer le fichier.
 
Bonjour,
j'ai fait comme demandé, explication en fichier.
Que fait l'onglet quand c'est finit, on imprime et hop on efface et on recommence (ou autre) c'est là que des boutons pourraient faire l'affaire.
Faire les essais sur ce fichier car si tu transfère la macro sur un fichier qui n'a pas les même données en même place ca va pas
Bruno
 

Pièces jointes

Bonjour Bruno, j'ai reçu 2 nouveaux produits avec 2 code barre différents et qui ne contiennent pas "/", pour les différencier seulement a travers le nombre de caractère dans le code barre donc je me suis basé sur les anciens codes que vous avez mis et j'ai essayer d'écrire ce code pour résoudre le souci, pouvez vous me dire si il est correct, merci.
j'ai essayer de changer ce code:
If Target.Value Like "*/*" = False Then
MsgBox "Code Barre Incorrect", vbExclamation, "ANNULATION"

par celui la:
If Target.Value Like "*/*" = False Then
lng = Len(Target): gtin = Mid(Target, 3, 14)
ref1 = Application.VLookup(gtin, Sheets(2).Range("'BD Articles'!A:C"), 2, False)
If lng < 29 Then lot1 = Mid(Target, 19, lng) Else lot1 = Mid(Target, 27, lng)
lig = Application.Match(ref1, [A:A], 0)
If Not IsNumeric(lig) Then MsgBox "inexistant": Exit Sub
Application.EnableEvents = False
Range(lda) = Date: Beep
Cells(lig, 7) = lot1: Cells(lig, col) = Cells(lig, col) + 1: Target = ""
Target.Select
Application.EnableEvents = True
Exit Sub
End If

en précisant que pour effectuer la recherche des référence produits j'ai créer une feuille dans le fichier (BD Articles) qui contient les Gtin produit et leurs référence.
 
Bonjour,
C'est bien, j'ai plus de boulot . . .
Petit plus à apporter
ref1 = Application.VLookup(gtin, Sheets(2).Range("'BD Articles'!A:C"), 2, False)
Sheets(2) est à éviter d'ailleurs il fait doublon avec Range( "BD Articles'!....
(2) est un index, si on déplace l'onglet c'est tout faux . Moi je fais
Application.VLookup(gtin,Feuil1.[A:C], 2,False) 'Feuil1 est le Codename qui ne peut être changé que par VBA
C'est à gauche de BD Articles en fenêtre des projets.
<29 c'est maxi 28 souvent on se fait avoir
Sinon je pense que c'est bon.
Et bravo
Bruno
 
Pour avancer le code de la douchette indique quoi comme chiffre pour 7543540
Dans la macro j'ai vu que tu avais mis seulement dans le code 'Retour' de toute façon le Mid est à revoir.
Donc que dit le code de la douchette pour trouver 7543540 . . . . .!
Bruno
 
hé non ca passe pas pour l'autre donc voici la partie de macro
ceci à faire aussi en 'retour
Bruno
VB:
If Target.Value Like "*/*" = False Then
lng = Len(Target): gtin = Target.Text
gtin = Mid(Target.Text, 3, 14)
lg = Application.Match(gtin, Feuil2.[A:A], 0)
If Not IsNumeric(lg) Then MsgBox "Non trouv?": GoTo fin
If IsNumeric(Feuil2.Cells(lg, 2)) Then
lig = Application.Match(Val(Feuil2.Cells(lg, 2)), Feuil1.[A:A], 0)
Else
lig = Application.Match(Feuil2.Cells(lg, 2), Feuil1.[A:A], 0)
End If
If Not IsNumeric(lig) Then MsgBox "inexistant": GoTo fin
If lng < 29 Then lot1 = Mid(Target, 19, lng) Else lot1 = Mid(Target, 27, lng)
Application.EnableEvents = False
Cells(lig, 7) = lot1: Cells(lig, col) = Cells(lig, col) + 1: Target = "": Beep
Target.Select
Application.EnableEvents = True
GoTo fin
End If
 
- 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

Retour