CREER CODE BARRE (GENCOD EAN13)

cs_dragon Messages postés 2336 Date d'inscription samedi 14 juillet 2001 Statut Membre Dernière intervention 5 mai 2009 - 16 août 2003 à 13:59
corde12002 Messages postés 1 Date d'inscription jeudi 18 février 2010 Statut Membre Dernière intervention 19 février 2010 - 19 févr. 2010 à 16:07
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/8248-creer-code-barre-gencod-ean13

corde12002 Messages postés 1 Date d'inscription jeudi 18 février 2010 Statut Membre Dernière intervention 19 février 2010
19 févr. 2010 à 16:07
bonjour,

je désire garder uniquement le nombre du code barre afin de l'intégrer dans mon ERP
Comment faire?
commedia Messages postés 1 Date d'inscription mercredi 20 décembre 2006 Statut Membre Dernière intervention 28 août 2009
28 août 2009 à 20:51
Salut à tous, le code est simple mais il donne de mauvaises informations! La clé qu'il donne est fausse! De plus la fonction ne fait pas la différence entre une série de 10,12,13 ou plus de chiffres et donne quand même une clé! Sans compter qu'il ne gère pas les premiers 0.
Allez ici ( http://www.leradin.com ) c'est payant mais efficace (formule dans Excel pour vos tableaux). Mais bravo quand même à vous qui avez bossé dessus.
Lionel
belsugar Messages postés 1 Date d'inscription samedi 6 septembre 2008 Statut Membre Dernière intervention 7 septembre 2008
7 sept. 2008 à 00:48
bonsoir

j'ai essayé, mais je n'y arrive pas il faut dire que je n'ai pas votre talent.
déjà quand j'extrait le zip j'ai un message qui me demande un mot de passe.
après j'ai bien essayé de copier la macro compléméntaire mais elle ne va pas dans excel, elle reste dans mes documents.
j'ai bien compris avec l'exemple ce que faisait la formule transbar, mais si je change le code numérique( que je laisse bien en formt texte) soit cela ne m'affiche plus rien , soit un bout de chiffre enfin rien qui correspondant à un code barre correct. je crois que j'ai besoin d' une aide plus détaillée et pas trop en langage informatique je suis plutot dans la partie chiffre;
merci pour l'aide que vous voudrez bien m'apporter.
jpfbio Messages postés 2 Date d'inscription vendredi 15 décembre 2000 Statut Membre Dernière intervention 4 juillet 2008
4 juil. 2008 à 10:38
J'ai trouvé : tu actives ta macro, et dans la cellule où tu veux que ton code barre apparaisse, tu insères la fonction "transbar".
Tu inscris alors entre les parenthèses, l'adresse de la cellule origine où est inscrit le code en chiffres.
Ex : en h4 je tape : =Transbar(H3)
(h3 désignant la cellule "source")

Bon, je ne suis pas un spécialiste, j'explique peut-être mal, mais ça a fonctionné. Les codes barres sont lus sans difficulté après impression.
jpfbio Messages postés 2 Date d'inscription vendredi 15 décembre 2000 Statut Membre Dernière intervention 4 juillet 2008
4 juil. 2008 à 09:10
Même pb que safespam. J'use mes neurones là... A l'aide !
Safespam Messages postés 1 Date d'inscription mercredi 18 juin 2008 Statut Membre Dernière intervention 18 juin 2008
18 juin 2008 à 11:12
Bonjour,

Merci beaucoup pour cette solution qui semble vraiment simple à mettre en oeuvre, même pour le néophyte complet que je suis. Je me trouve néanmoins dans l'impossibilité d'utiliser ta macro.

Tel que décrit ci-dessus, j'ai bien fait /Macro complémentaire/parcourir/ean13.xla et Excel ne m'a rien signaler de spécial (pas de message d'erreur). Je vois bien dans la liste des fonctions apparaître une fonction nommée "=EAN13.xla!Module1.Transbar()" mais qu'excel ne sait pas traiter "impossible de traiter votre question. Soit Excel ne trouve pas de fonctions équivalente soit l'aide n'est pas installée. Cette fonction ne possède pas d'argument".

Quand j'essaye malgré tout de l'utiliser, Excel me sort un code erreur "#NOM?".

Je précise que "Ean13" apparait bien dans la liste des macroc complémentaires et que sa case est cochée.

Je ne voit pas trop quoi faire de plus. Si qqu'un a une idée.

Pour info : j'ai besoin de générer plus de 50 000 CB par mois depuis une base Excel alors je suis TRES intéressé par cette solution.

Merci de votre aide et Bravo pour vos contributions.
anahadak Messages postés 5 Date d'inscription lundi 12 juin 2006 Statut Membre Dernière intervention 21 avril 2008
3 avril 2008 à 14:08
merci neodante pour le code c vraiment trés utile et pour le completer je vous propose deux choses:
1) ajouter un controle de saisie au niveau du textbox txtEncodeEAN13 pour que l'utilisateur ne puisse pas entrer des caracteres.
2)une fonction qui permet d'envoyer le code barre generer sous vb dans te textbox txtEAN13 à un fichier exel et faire une aperçu avant impression.

bon j'ai travaillé sur votre code et j'ai pu ajouter ces deux contraites voila la source:

Private Sub txtEncodeEAN13_KeyPress(KeyAscii As Integer)
If Not Controler_KeyPress_Ok(KeyAscii, txtEncodeEAN13, True, True) Then KeyAscii = 0
' | |
' | > indique que l'on veut saisir que des entiers
' > indique que l'on veut saisir que des nombres positifs
End Sub

ensuite ajouter la fonction Controler_KeyPress_Ok dans un module:

Public Function Controler_KeyPress_Ok(ByVal KeyAscii As Integer, ByVal Txtbox As TextBox, ByVal Est_Positif As Boolean, ByVal Est_Entier As Boolean) As Boolean
Select Case KeyAscii
' 48 to 57 => 0 à 9 ; 8 => Backspace ; 13 => Enter ; 3 => Ctrl+C (copier) ; 22 => Ctrl+V (coller) ; 24 => Ctrl+X (couper)
Case 48 To 57, 8, 13, 3, 22, 24:
Controler_KeyPress_Ok = True

' 44 => , (virgule) ; 46 => . (point)
Case 44, 46:
If Est_Entier Then ' si c'est un entier...
Controler_KeyPress_Ok = False ' ... on annule la virgule ou le point
Else ' sinon...
Controler_KeyPress_Ok InStr(Txtbox.Text, ".") 0 And InStr(Txtbox.Text, ",") = 0 ' ... on annule la virgule ou le point seulement si le caractere est deja present dans le texte
End If

' 45 => - (signe moins)
Case 45:
If Est_Positif Then ' si c'est un positif...
Controler_KeyPress_Ok = False ' ... on annule le signe moins
Else ' sinon...
Controler_KeyPress_Ok InStr(Txtbox.Text, "-") 0 And Txtbox.SelStart = 0 ' ... on annule le signe moins seulement si il est deja present dans le texte et s'il n'est pas le premier caractere du texte
End If

' caracteres non valides
Case Else:
Controler_KeyPress_Ok = False
End Select


' Si caractere valide et si on permet des nombres negatifs ...
If Controler_KeyPress_Ok And Not Est_Positif Then
'... alors on annule le caractere s'il est placé devant un signe moins
If Txtbox.SelStart 0 And InStr(Txtbox.Text, "-") Then Controler_KeyPress_Ok False
End If
End Function

et pour le 2éme point voila le code qui permet de faire appel à une feuil d'un classeur exel et faire une aperçcu anant impression du code barre.

1: ajouter un boutton de commande nomé aperçu:
2: coller le code

Private Sub aperçu_Click()
Dim oExcel As Excel.Application
Dim oWk As Workbook
Dim sh
Set oExcel = CreateObject("Excel.Application")
oExcel.Visible = True 'Masque l'application excel (valeur par défaut)
On Error Resume Next 'Pour éviter les erreur si classeur n'existe pas
Set oWk = oExcel.Workbooks.Open(App.Path & "\Classeur1.xls")
oWk.Sheets("Feuil1").Range("A2") = Transbar(txtEncodeEAN13)
For Each sh In ActiveWindow.SelectedSheets
sh.PrintPreview
Next
On Error GoTo 0
If oWk Is Nothing Then
MsgBox "Erreur sur ouverture classeur", vbCritical
Exit Sub
End If
end sub

3: ajouter un classeur nomé Classeur1.xls dans le dossier EAN13
4: changer la police de la colnne A 2emme ligne il faut mettre la police EanT30Rfz
et n'oublier pas d'ajouter la réference microsof exel objet library dans votre projet.

bonne chance.
CATHOU29 Messages postés 1 Date d'inscription lundi 22 janvier 2007 Statut Membre Dernière intervention 22 janvier 2007
22 janv. 2007 à 16:00
bonjour

ben j'ai pas réussi a lire la macro excel
je crois que y'a un bug dans le programme
fanafancastries Messages postés 1 Date d'inscription jeudi 27 avril 2006 Statut Membre Dernière intervention 13 novembre 2006
13 nov. 2006 à 18:22
Je me suis servie de ta macro un fois déjà et ça a super bien marché, mais aujourd'hui, quand j'ouvre le fichier ou il y a les codes barres pour en crere de nouveaux (nouveaux produits)je n'arrive plus à la faire marcher il semble qu'il y ait un problème de nom....au secourd, je craque, ça fait 2 heures que je suis dessus !
ulyparis Messages postés 1 Date d'inscription vendredi 6 octobre 2006 Statut Membre Dernière intervention 6 octobre 2006
6 oct. 2006 à 17:08
Est-ce que quelqu'un a un programme qui fait le contraire, qui part du code barre (voici son équivalent en arial :

y(7IC8E8*NNLRPL(

et qui donne les 13 chiffres?

merci à l'avance!
cs_dadou19 Messages postés 8 Date d'inscription mercredi 16 juin 2004 Statut Membre Dernière intervention 4 octobre 2006
4 oct. 2006 à 16:32
Hello

c'est bon, il vaut mieux utiliser le code de grand Zebu
car il passe par le format texte = 'XXXXXXXXXXXXX
donc on voit les 0

mais bon dans excel je recupère les gencod tels quels
il me fallait les transformer pour pouvoir toujours les afficher en code barre donc par exemple le gencod 0000000000154

dans excel = 154

formule : si gencod dans A1 :

=ean13(GAUCHE(DROITE("'00000000000"&A1;13);12))
en mettant bien la police de grand ZEBU sur la cellule résultat

on a toujours le code barre même pour nombre < 13 chiffres
(on force à mettre les 0 en concaténant la chaine et en tronquant le tout pour finir pile à 13 chiffres ;o)

Voilou

merci donc à Grand ZEBU et toi ;o)

Bye
cs_neodante Messages postés 2835 Date d'inscription lundi 11 août 2003 Statut Modérateur Dernière intervention 16 décembre 2006 11
26 sept. 2006 à 09:21
Arf je n'ai pas de solution pour cela :( Si quelqu'un trouve une solution, je me ferais un plaisir de la mettre en ligne en son nom !

Désolé

++
cs_dadou19 Messages postés 8 Date d'inscription mercredi 16 juin 2004 Statut Membre Dernière intervention 4 octobre 2006
25 sept. 2006 à 09:07
Salut,
Ton code est vraiment excellent,

je l'utilise pour m'aider à baliser mon inventaire

Par contre j'ai un problème, il semblerait qu'il ne génère pas du tout les codes barres commençant par 0 ce qui n'est pas courant, mais qui existent quand même

Si tu as une solution, je suis preneur...
Slts,

Dadou19
cs_neodante Messages postés 2835 Date d'inscription lundi 11 août 2003 Statut Modérateur Dernière intervention 16 décembre 2006 11
22 juil. 2006 à 15:17
Non l'appli est seulement faite pour les EAN 13

Désolé
celineman Messages postés 1 Date d'inscription mercredi 19 juillet 2006 Statut Membre Dernière intervention 22 juillet 2006
22 juil. 2006 à 14:03
Salut ton programme est génial cela fait un moment que je cherchais une solution, grâce à toi je l'ai.
Par contre est t'il possible de faire la même chose avec des ean de taille inférieur ex: des ean 8
josh666 Messages postés 81 Date d'inscription mercredi 7 juillet 2004 Statut Membre Dernière intervention 1 octobre 2007 1
31 mai 2006 à 20:41
Pense-tu que c'est possible de faire ce code en php pour une application Web ?

J'ai pensé a utilisé la librairie GD...
ypotier Messages postés 1 Date d'inscription jeudi 6 avril 2006 Statut Membre Dernière intervention 7 avril 2006
7 avril 2006 à 16:47
Bravo pour cette macro, très simple d'emploi pour moi qui ne connait rien au développement. Elle permet aussi le calcul de la clef d'un nombre de 12 caractères en mettant simplement la valeur "x" en 13ème position.
cs_neodante Messages postés 2835 Date d'inscription lundi 11 août 2003 Statut Modérateur Dernière intervention 16 décembre 2006 11
2 avril 2006 à 10:40
Salut,
Pour ce qui est de travailler avec une autre fonte, je n'ai jamais essayé et si elle te donne d'autres résultats cela est normal puisque le code est spécialement fait pour la police donné avec.

Ensuite concernant la police, à savoir si elle est libre de droit, je n'en sais rien du tout ! Je l'avais utilisé à l'époque quand je travaillais chez un grand distributeur et on me l'avais donné tel quel à utiliser. Mais je doute que celle-ci soit réellement libre de droit ! :( Pour adapter le code à une autre police il suffit de changer la sortie en trouvant la correspondanec, c'est pas bien compliqué mais ça prend un petit peu de temps ... ;-)

++
barchil Messages postés 2 Date d'inscription mardi 16 septembre 2003 Statut Membre Dernière intervention 1 avril 2006
1 avril 2006 à 20:33
en premier MERCI pour cette merveille que je trouve tres utile
pour excel le truc est de demarrer en premier la macro et ensuite ouvrir le classeur

ma question est que j'ai essayé de travailler avec une autre fontes de ean13 mais ça donne pas la même chose
ma deuxieme question est ce que la fonte qui accounpagne ton zip est libre de droit
Merci infiniment
tony2madinina Messages postés 8 Date d'inscription mardi 31 janvier 2006 Statut Membre Dernière intervention 18 avril 2006
1 févr. 2006 à 10:57
Bonjour
sous excel tout va bien mais je voudrais traduire ce code pour qu'il puissent fonctionner sous access.
si quelqu'un pouvait me donner un coup de main....
Merci d'avance
argentan61 Messages postés 2 Date d'inscription mercredi 13 avril 2005 Statut Membre Dernière intervention 6 mars 2006
29 janv. 2006 à 21:11
Meme probleme que HAABAL

Comment Faire?

Merci
cs_neodante Messages postés 2835 Date d'inscription lundi 11 août 2003 Statut Modérateur Dernière intervention 16 décembre 2006 11
22 janv. 2006 à 23:07
Arf mes compétences en Excel ne sont plus ce qu'elles étaient et je ne sais pas comment résoudre votre problème. La solution doit être simple mais je ne l'ai pas ! désolé :s

++
haabal Messages postés 1 Date d'inscription dimanche 22 janvier 2006 Statut Membre Dernière intervention 22 janvier 2006
22 janv. 2006 à 23:03
Bonjour,
je découvre les macros sur excel. donc soyez indulgent avec un débutant SVP !
je cherche à imprimer des étiquettes produits avec ean13.
J'ai installé la police dans windows/font
J'ai placé la macro dans macro complémentaire
J'ai ouvert l'exemple et vu la méthode d'appel de la fonction transbar.
Mais j'ai un message d'erreur : 1) excel me demande si je veux mettre à jour les liaisons avec un autre classeur. je dis oui. il me répond Excel n'arrive pas à trouver transbar sur ean13.xla et que cela peut provenir de deux choses : soit que le nom n'est pas défini, soit que le nom ne se rapporte pas à une zone rectangulaire de cellule.
Comment puis je définir transbar ? Ai-je zappé une étape ?
Merci de votre aide,
cs_neodante Messages postés 2835 Date d'inscription lundi 11 août 2003 Statut Modérateur Dernière intervention 16 décembre 2006 11
14 mars 2005 à 22:12
Le but de l'EAN est de donner un moyen standard et très fiable de lire des codes donc n'importe quel appareil sachant lire les EAN13 marche très bien !

@+
cuq Messages postés 345 Date d'inscription mardi 3 juin 2003 Statut Membre Dernière intervention 21 mars 2008 2
14 mars 2005 à 14:31
Bonjour J'ai une petite question sur les codes barres :

Pour relire le code barre la douchette suffit-elle ou faut il rajouter un soft spécial ? comment l'intégrée dans une application VB ?

Sinon le site est super pour l'explication des différents codes ?
cs_neodante Messages postés 2835 Date d'inscription lundi 11 août 2003 Statut Modérateur Dernière intervention 16 décembre 2006 11
18 déc. 2004 à 18:13
Bonjour,
comme dit dans la description de la source, le ZIP contient une macro Excel afin d'automatiser le processus. Le répertoire 'Macro Excel' contient la macro complémentaire et une exemple d'utilisation. Une fois la macro installé dans Excel (faire Outils/Macro complémentaire puis Parcourir pour installer la macro), il suffit d'appeller la méthode comme dans l'exemple ...
cs_skaade Messages postés 1 Date d'inscription jeudi 16 décembre 2004 Statut Membre Dernière intervention 18 décembre 2004
18 déc. 2004 à 04:17
Bjr,

quelqu'un pourrait il me dire comment insérer ce programme EAN13Encoder dans Excel pour pouvoir générer des codes au kilomètre ? est ce possible d'ailleurs ???

Merci d'avance pour toute réponse !!

C'est urgent ;o)

Skaade
racattac13 Messages postés 62 Date d'inscription vendredi 23 avril 2004 Statut Membre Dernière intervention 14 février 2010
21 août 2004 à 11:29
ouais youpi on va payer moins chere les courses au supermarché
je rigole...
cs_bigsam Messages postés 1 Date d'inscription samedi 21 février 2004 Statut Membre Dernière intervention 26 février 2004
26 févr. 2004 à 08:58
Merci 1000 fois . Jutilise les code barre tous les jours profesionnellement, les taper est un peux fastidieux , aujourdh'ui grace a ton programme et a la lecture optique c'est devenu du billard . bravo Champion !!!!
cmaboitemail Messages postés 1 Date d'inscription lundi 2 février 2004 Statut Membre Dernière intervention 3 février 2004
3 févr. 2004 à 11:50
Est-ce qu'il est possible de créer des EAN 8 à partir ce code qui fonctionne d'ailleurs très bien pour les EAN 13 ?
Merci d'avance de m'éclairer sur ce point...
cs_david96 Messages postés 4 Date d'inscription lundi 8 décembre 2003 Statut Membre Dernière intervention 24 mars 2015
15 janv. 2004 à 22:31
Merci beaucoup :-D
cs_neodante Messages postés 2835 Date d'inscription lundi 11 août 2003 Statut Modérateur Dernière intervention 16 décembre 2006 11
15 janv. 2004 à 14:33
Google est le mien : 1er lien de la 1ère page !
www.eannet-france.org
@+
cs_david96 Messages postés 4 Date d'inscription lundi 8 décembre 2003 Statut Membre Dernière intervention 24 mars 2015
15 janv. 2004 à 00:18
Et bha j'ai pas trouvé (Google ne m'aime pas) :-(
cs_neodante Messages postés 2835 Date d'inscription lundi 11 août 2003 Statut Modérateur Dernière intervention 16 décembre 2006 11
14 janv. 2004 à 19:13
Pour que ton code barre soit unique et normalisé, il faut que tu contact l'organisme qui centralise tous les référencements ... mais je ne me rappel plus trop du nom : google est mon ami (ma nouvelle devise! lol) ...
@+
cs_david96 Messages postés 4 Date d'inscription lundi 8 décembre 2003 Statut Membre Dernière intervention 24 mars 2015
14 janv. 2004 à 17:41
Super !
Heu... par contre comment je fait pour créer mon code barre, pour vendre mes CD audio que j'ai fait en studio ?
cs_neodante Messages postés 2835 Date d'inscription lundi 11 août 2003 Statut Modérateur Dernière intervention 16 décembre 2006 11
17 août 2003 à 14:56
En fait mon programme traduit les chiffres en caractères utilisable par une police de caractères qui affiche le code barre. Donc si vous voulez mettre cela dans un de vos programmes, il vous suffit de changer la police de vos textbox avec celle qui est fournit dans le ZIP et d'utiliser les algorithmes de mon programme pour traduite votre numéro de 13 chiffres en code barre.
Je vais mettre à jour le ZIP avec un fichier Excel exemple pour ceux qui veulent utiliser ça avec Excel -> pour imprimer c'est quand même plus pratique !
cs_fuga Messages postés 1 Date d'inscription dimanche 17 août 2003 Statut Membre Dernière intervention 17 août 2003
17 août 2003 à 14:47
ok mais on doit mettre quoi et ou?? par exemple ?? et c comment le language ean13?? c avec la nouvelle ecriture ?? ok mais alors on fais quoi ? enfin disez quoi qu'on doit faire svp ..

Fuga
cs_neodante Messages postés 2835 Date d'inscription lundi 11 août 2003 Statut Modérateur Dernière intervention 16 décembre 2006 11
17 août 2003 à 13:23
Le programme est à la base ici pour montrer comment est constitué un code barre !! La source est livré avec une macro Excel (vraiment pas dur de savoir comment ça marche !) qui permet de réaliser des planches complètes de code barres !!! (à condition de mettre la bonne police ->dans le ZIP dans les cellules et d'appeler la fonction Transbar )! Et là oui on peut faire vraiment tous les codes barre que l'on veut (et ne plus ça marche en magasin !!!)
cs_menzo Messages postés 1 Date d'inscription vendredi 7 février 2003 Statut Membre Dernière intervention 17 août 2003
17 août 2003 à 11:34
heu pardon mias comment ca fonctionne ce programme... et si on sais vrmt faire qq'ch avec ?? merci
dluks Messages postés 1 Date d'inscription samedi 16 août 2003 Statut Membre Dernière intervention 16 août 2003
16 août 2003 à 15:28
Ce un code magnifique
cs_dragon Messages postés 2336 Date d'inscription samedi 14 juillet 2001 Statut Membre Dernière intervention 5 mai 2009 6
16 août 2003 à 13:59
la façon la plus simple de faire ça, c'est habituellement les programme pour faire des code bar ont de police qui en fond. c'est tout simplement des polices de caractère.
Rejoignez-nous