Le calcul de la clé de contrôle du code EAN 13 dont les 12 premiers chiffres sont 471-9-5120-0288-x (où x est la clé de contrôle que l’on cherche), résulte du tableau suivant2:
Chiffres du code à barres 4 7 1 9 5 1 2 0 0 2 8 8 Poids 1 3 1 3 1 3 1 3 1 3 1 3 Produit 4 21 1 27 5 3 2 0 0 6 8 24
Pour les poids on alterne les valeurs 1 et 3 .
On calcule ensuite la somme des résultats,
On calcule le reste de la division par 10 de la somme précédemment calculée :
Si le reste de la division est égal à 0, alors la clé est 0,
Sinon, on ôte à 10 le reste ainsi trouvé : Clé = 10 - Reste.
La somme vaut dans cet exemple 4+21+1+27+5+3+2+0+0+6+8+24 101, le reste de la division par 10 est 1 ; la clé vaut donc 10-1 9. Le code EAN 13 complet est 4719-5120-0288-9
Private Function bar13(ByVal c As String) As String Dim titi, total As Integer, i As Integer, c13 As Integer, k As Integer titi = Split(StrConv(c, vbUnicode), Chr(0)) total = 0 For i = 0 To UBound(titi) - 1 If i Mod 2 0 Then k 1 Else k = 3 total = total + titi(i) * k Next If total = 0 Then c13 = 0 Else c13 = 10 - (total Mod 10) End If bar13 = c & "-" & CStr(c13) End Function
Dim bar12 As String bar12 = "471951200288" MsgBox bar13(bar12)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionje vous SVP simplement un code qui permet de affiche les 13 caractère, dans une zone de texte.
C'est ce que je veux, pas plus et moins
mon dernier effort avec ce problème de tournage en rondLe mien certainement.
tu vas devoir soit passer au C#Pas obligé, j'ai à mon actif quelques dizaines de projets en VB (6, .Net et même en Qbasic).
Il te faudra alors, je pense, trouver un appareil spécial ! (et je doute fort qu'il existe car nul n'en aurait l'utilité).
Je vous respecte tout sens du mot
"d'entre nous sont des professionnels" je crois pas car,
Je veux que vous vous mettre dans mes chaussuresTu chausses du combien?
pas mal comme poémeAurais-tu raté ta vocation?
Tu as apparemment trente ans, mais tu te conduis comme un enfant de 2 ans qui boude parce que sa mère lui refuse une galette au beurre d'arachides dix minutes avant le souper.
Amen
Et puis, si tu adores vraiment la programmation, tu le prouverais en nous montrant ton propre code. Si tu ne peux pas t'en sortir, au moins un petit peu, avec tout ce que nous t'avons déjà dit, c'est que tu es un inepte et un incapable.