Gros probleme pour créer ce projet

Kero

XLDnaute Junior
Comment remplir la ligne du dessous si la condition est rempli?

Bonjour a tout le Forum

Voila je dois réaliser un projet assez complexe pour ma société sur Excel en plusieurs parties.
J’ai recherché pas mal d’aide sur le forum, des tutoriels sur les macros et le VBA mais je ne comprends pas.:confused:

Voici la plus grosse partie du projet

Je dois scanner avec une douchette des codes barres sur des produits différents, dans ces codes barre on doit pouvoir dissocier le numéro de lot et la référence mais le problème, les codes barre ne sont pas pareil et pour certain produit il faut scanner 2 code barre pour avoir ces numéros

Exemple pour un produit à 2 codes barre
1ér code barre : +H302CT50940- n° de réf est « CT5094 »
2ème Code barre : +$$90000150518107FM2705-S n° de lot est « 07FM2705 »

Exemple sur un autre produit à 1 code barre
Code barre : ZVS05060ANRG2792201007 n° de réf est « ZVS05060 » et le n° de lot est « ANRG2792 »

Autre exemple de produit à 2 codes barre
1er code barre : EX061001C n° de Réf est EX061001C
2eme code barre : 105844166317091100 n° de lot est « 58441663 »

Autre exemple de produit à 1 code barre
Code barre : 05052791EW040081 n° de réf « EW040081 » n° de lot « 05052791 »

Alors déjà, première question, est ce que cela vous semble possible a faire sur Excel ?

Serai ce plus facile si l’on met une interactivité avant chaque remplissage de ligne ? a savoir y a-t-il 1 ou 2 code barre à scanner ?

Merci d’avance de vos réponses

Kero
 
Dernière édition:

skoobi

XLDnaute Barbatruc
Re : Gros probleme pour créer ce projet

Bonjour,

pour ce qui est de récupérer sur excel un code barre avec une douchette, as-tu fais une recherche sur "code barre" (avec les guillements), tu trouveras un début de réponse.
 

Staple1600

XLDnaute Barbatruc
Re : Gros probleme pour créer ce projet

Bonsoir à tous



Une ébauche pas trés jolie

Code:
Function EX_Codebarre(X As String)
Select Case Len(X)
Case 9
EX_Codebarre = X
Case 12, 17, 25
If Left(X, 2) = "+H" Then EX_Codebarre = Mid(X, 6, 6)
If Left(X, 3) = "+$$" Then EX_Codebarre = Mid(X, 16, 8)
If IsNumeric(X) = True Then EX_Codebarre = Mid(X, 2, 256)
Case 22
EX_Codebarre = Left(X, 8) & " | " & Mid(X, 9, 8)
End Select
End Function
Sub le_test()
Dim Y As String: Dim Z As String: Dim W As String
W = "ZVS05060ANRG2792201007"
Z = "+$$90000150518107FM2705-S"
Y = "+H302CT50940"
MsgBox EX_Codebarre(Y)
MsgBox EX_Codebarre(Z)
MsgBox EX_Codebarre(W)
End Sub

Peut mieux faire
(Pas moi, les autres forumeurs )
 

Kero

XLDnaute Junior
Re : Gros probleme pour créer ce projet

Bonjour Staple1600, Skoobi, le forum

Déja merci pour vos réponses:)

Skoobi, pour ce qui est de récupérer les code barre avec la douchette, il n'y a pas de probleme, je scan et cela rempli les cellules.

Staple1600, merci pour ce code que je vais tester et essayer de comprendre pour aussi l'améliorer, mais c'est peut etre un bon début.

Encore merci, je vous tiens informé

Cordialement Kero :)
 
Dernière édition:

Kero

XLDnaute Junior
Re : Gros probleme pour créer ce projet

Re a tout le forum,

Après avoir essayé de comprendre la macro de Staple, je m'aperçois que c'est pas ma tasse de thé. C'est pour cela que je vous envoie mon fichier excel avec mes commentaires pour que ma demande soit bien comprise.
Je remercie encore Staple pour ce premier code:)

Merci d'avance de votre aide.

Cordialement Kero
:eek:
 

Pièces jointes

  • gestion par code barre.zip
    11.7 KB · Affichages: 39
Dernière édition:

Kero

XLDnaute Junior
Re : Gros probleme pour créer ce projet

Re le forum

Staple, comment faire pour mettre la valeur d'une cellule(exemple: E4) a la place de valeur pour Y, W, Z?

Merci d'avance

Cordialement.
 
Dernière édition:

Staple1600

XLDnaute Barbatruc
Re : Gros probleme pour créer ce projet

Bonjour



Kero: je ne suis pas tout seul sur le forum ;)

Donc je repose ta question à l'ensemble du Forum.


"Forumeuses, forumeurs",

comment faire pour mettre la valeur d'une cellule(exemple: E4) a la place de valeur pour Y, W, Z?

Merci d'avance
EDITION: je viens de regarder ton fichier joint
Il faut utiliser la fonction comme une formule.

Voir modification dans le fichier.

LA fonction VBA personnalisée n'est pas finalisée.

Ci-joint:
 
Dernière édition:

Kero

XLDnaute Junior
Re : Gros probleme pour créer ce projet

Bonjour a tous!!

Serait il possible de me commenter le code car j'essai de le comprend mais je me torture le cerveau donc des commentaires m'aiderai a en savoir un peu plus.

Merci :)
Cordialement Kero
 
Dernière édition:

Staple1600

XLDnaute Barbatruc
Re : Gros probleme pour créer ce projet

Re


Commentons, commentons
Code:
Public Function Codebarre(X As Range)
Application.Volatile
[COLOR=SeaGreen] 'Len : nombre de caractères [/COLOR]
Select Case Len(X.Text)
[COLOR=SeaGreen] 'si 9 alors la cellule garde sa valeur initiale[/COLOR]
Case 9
Codebarre = X.Value
[COLOR=SeaGreen] 'Dans les cas ou Len = 12,17 ou 25[/COLOR]
Case 12, 17, 25
'si Les deux 2 caractères à gauche sont +H
If Left(X, 2) = "+H" Then Codebarre = Mid(X, 6, 6)
[COLOR=SeaGreen]'la fonction renvoie 6 car. à partir du 6ème caractère[/COLOR]
[COLOR=SeaGreen] 'si les 3 caractères à gauche sont +$$
[/COLOR][COLOR=SeaGreen]'la fonction renvoie 8 car. à partir du 16ème caractère[/COLOR]
If Left(X, 3) = "+$$" Then Codebarre = Mid(X, 16, 8)
[COLOR=SeaGreen] 'si la cellule contient une valeur numérique
'la fonction renvoie le contenu de la cellule à partir du 2ème caractère
[/COLOR] If IsNumeric(X) = True Then Codebarre = Mid(X, 2, 256)
Case 22
Codebarre = Left(X, 8) & " | " & Mid(X, 9, 8)
End Select
End Function
Mais comme je disais dans mon précédent message , la fonction est loin d'être fonctionnelle.

Edition: bonjour skoobi
 
Dernière édition:

Kero

XLDnaute Junior
Re : Gros probleme pour créer ce projet

Re Staple
Je sais que tu n'ai pas tout seul mais tu est le seul pour l'instant qui me permet d'avancer un petit peu sur ce projet danc je te remercie encore une fois:D et pis encore une autre pour ces commentaires.

Je voudrais bien me prendre un bouquin pour justement améliorer ta proposition mais je sais pas lequel prendre et surtout quand je lis les tuto pas a pas sur le vba, je trouve sa lourd a comprendre ou peut étre que je ne suis pas fait pour la programation.

Donc encore merci et je vais me pencher un peu plus sur tes commentaires.

Kero ;)
 
Dernière édition:

Kero

XLDnaute Junior
Re : Gros probleme pour créer ce projet

Bonjour

Bon je n'ai pas encore acheter de bouquin mais avec les commentaires et a force de lire les code sur différent sujet, je commence a comprendre, surtout le "Select Case" qui me sert actuellement. J'essai de finir ce projet je vous montre ce que cela donne.

Cordialement.:)
 
Dernière édition:

Discussions similaires

Réponses
12
Affichages
387
Réponses
2
Affichages
637

Statistiques des forums

Discussions
312 457
Messages
2 088 566
Membres
103 882
dernier inscrit
jregis13