cs_dragon
Messages postés2336Date d'inscriptionsamedi 14 juillet 2001StatutMembreDernière intervention 5 mai 2009
-
16 août 2003 à 13:59
corde12002
Messages postés1Date d'inscriptionjeudi 18 février 2010StatutMembreDernière intervention19 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.
corde12002
Messages postés1Date d'inscriptionjeudi 18 février 2010StatutMembreDernière intervention19 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és1Date d'inscriptionmercredi 20 décembre 2006StatutMembreDernière intervention28 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és1Date d'inscriptionsamedi 6 septembre 2008StatutMembreDerniè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és2Date d'inscriptionvendredi 15 décembre 2000StatutMembreDerniè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és2Date d'inscriptionvendredi 15 décembre 2000StatutMembreDerniè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és1Date d'inscriptionmercredi 18 juin 2008StatutMembreDernière intervention18 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és5Date d'inscriptionlundi 12 juin 2006StatutMembreDernière intervention21 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és1Date d'inscriptionlundi 22 janvier 2007StatutMembreDernière intervention22 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és1Date d'inscriptionjeudi 27 avril 2006StatutMembreDernière intervention13 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és1Date d'inscriptionvendredi 6 octobre 2006StatutMembreDerniè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és8Date d'inscriptionmercredi 16 juin 2004StatutMembreDerniè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és2835Date d'inscriptionlundi 11 août 2003StatutModérateurDernière intervention16 décembre 200611 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és8Date d'inscriptionmercredi 16 juin 2004StatutMembreDerniè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és2835Date d'inscriptionlundi 11 août 2003StatutModérateurDernière intervention16 décembre 200611 22 juil. 2006 à 15:17
Non l'appli est seulement faite pour les EAN 13
Désolé
celineman
Messages postés1Date d'inscriptionmercredi 19 juillet 2006StatutMembreDernière intervention22 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és81Date d'inscriptionmercredi 7 juillet 2004StatutMembreDernière intervention 1 octobre 20071 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és1Date d'inscriptionjeudi 6 avril 2006StatutMembreDerniè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és2835Date d'inscriptionlundi 11 août 2003StatutModérateurDernière intervention16 décembre 200611 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és2Date d'inscriptionmardi 16 septembre 2003StatutMembreDerniè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és8Date d'inscriptionmardi 31 janvier 2006StatutMembreDernière intervention18 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és2Date d'inscriptionmercredi 13 avril 2005StatutMembreDernière intervention 6 mars 2006 29 janv. 2006 à 21:11
Meme probleme que HAABAL
Comment Faire?
Merci
cs_neodante
Messages postés2835Date d'inscriptionlundi 11 août 2003StatutModérateurDernière intervention16 décembre 200611 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és1Date d'inscriptiondimanche 22 janvier 2006StatutMembreDernière intervention22 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és2835Date d'inscriptionlundi 11 août 2003StatutModérateurDernière intervention16 décembre 200611 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és345Date d'inscriptionmardi 3 juin 2003StatutMembreDernière intervention21 mars 20082 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és2835Date d'inscriptionlundi 11 août 2003StatutModérateurDernière intervention16 décembre 200611 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és1Date d'inscriptionjeudi 16 décembre 2004StatutMembreDernière intervention18 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és62Date d'inscriptionvendredi 23 avril 2004StatutMembreDernière intervention14 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és1Date d'inscriptionsamedi 21 février 2004StatutMembreDernière intervention26 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és1Date d'inscriptionlundi 2 février 2004StatutMembreDerniè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és4Date d'inscriptionlundi 8 décembre 2003StatutMembreDernière intervention24 mars 2015 15 janv. 2004 à 22:31
Merci beaucoup :-D
cs_neodante
Messages postés2835Date d'inscriptionlundi 11 août 2003StatutModérateurDernière intervention16 décembre 200611 15 janv. 2004 à 14:33
Google est le mien : 1er lien de la 1ère page !
www.eannet-france.org
@+
cs_david96
Messages postés4Date d'inscriptionlundi 8 décembre 2003StatutMembreDernière intervention24 mars 2015 15 janv. 2004 à 00:18
Et bha j'ai pas trouvé (Google ne m'aime pas) :-(
cs_neodante
Messages postés2835Date d'inscriptionlundi 11 août 2003StatutModérateurDernière intervention16 décembre 200611 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és4Date d'inscriptionlundi 8 décembre 2003StatutMembreDernière intervention24 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és2835Date d'inscriptionlundi 11 août 2003StatutModérateurDernière intervention16 décembre 200611 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és1Date d'inscriptiondimanche 17 août 2003StatutMembreDernière intervention17 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és2835Date d'inscriptionlundi 11 août 2003StatutModérateurDernière intervention16 décembre 200611 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és1Date d'inscriptionvendredi 7 février 2003StatutMembreDernière intervention17 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és1Date d'inscriptionsamedi 16 août 2003StatutMembreDernière intervention16 août 2003 16 août 2003 à 15:28
Ce un code magnifique
cs_dragon
Messages postés2336Date d'inscriptionsamedi 14 juillet 2001StatutMembreDernière intervention 5 mai 20096 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.
19 févr. 2010 à 16:07
je désire garder uniquement le nombre du code barre afin de l'intégrer dans mon ERP
Comment faire?
28 août 2009 à 20:51
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
7 sept. 2008 à 00:48
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.
4 juil. 2008 à 10:38
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.
4 juil. 2008 à 09:10
18 juin 2008 à 11:12
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.
3 avril 2008 à 14:08
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.
22 janv. 2007 à 16:00
ben j'ai pas réussi a lire la macro excel
je crois que y'a un bug dans le programme
13 nov. 2006 à 18:22
6 oct. 2006 à 17:08
y(7IC8E8*NNLRPL(
et qui donne les 13 chiffres?
merci à l'avance!
4 oct. 2006 à 16:32
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
26 sept. 2006 à 09:21
Désolé
++
25 sept. 2006 à 09:07
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
22 juil. 2006 à 15:17
Désolé
22 juil. 2006 à 14:03
Par contre est t'il possible de faire la même chose avec des ean de taille inférieur ex: des ean 8
31 mai 2006 à 20:41
J'ai pensé a utilisé la librairie GD...
7 avril 2006 à 16:47
2 avril 2006 à 10:40
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 ... ;-)
++
1 avril 2006 à 20:33
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
1 févr. 2006 à 10:57
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
29 janv. 2006 à 21:11
Comment Faire?
Merci
22 janv. 2006 à 23:07
++
22 janv. 2006 à 23:03
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,
14 mars 2005 à 22:12
@+
14 mars 2005 à 14:31
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 ?
18 déc. 2004 à 18:13
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 ...
18 déc. 2004 à 04:17
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
21 août 2004 à 11:29
je rigole...
26 févr. 2004 à 08:58
3 févr. 2004 à 11:50
Merci d'avance de m'éclairer sur ce point...
15 janv. 2004 à 22:31
15 janv. 2004 à 14:33
www.eannet-france.org
@+
15 janv. 2004 à 00:18
14 janv. 2004 à 19:13
@+
14 janv. 2004 à 17:41
Heu... par contre comment je fait pour créer mon code barre, pour vendre mes CD audio que j'ai fait en studio ?
17 août 2003 à 14:56
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 !
17 août 2003 à 14:47
Fuga
17 août 2003 à 13:23
17 août 2003 à 11:34
16 août 2003 à 15:28
16 août 2003 à 13:59