A L'AIDE- Recherche code VBA pour WORD

A L'AIDE- Recherche code VBA pour WORD - VB/VBA/VBS - Programmation

Marsh Posté le 27-03-2006 à 10:11:25    

Bonjour à tous,
 
Pour le boulot, j'ai besoin de faire un petit programme dans word UNIQUEMENT.
Le principe est le suivant :
Une boite de message s'ouvre et me demande "n° de B.L ?"
Je saisie donc un numéro à 6 chiffres.
Ensuite, une autre boite s'ouvre et me demande "combien ?"
Je tape par exemple "5" dans la boite.
 
Résultat du programme :
Le numéro à 6 chiffres que j'ai entré initialement s'affiche dans 5 cases à suivre d'un tableau WORD.
Attention, c'est un tableau à 2 colonnes et plusieurs lignes.
 
J’ai crée ce programme dans Excel mais malheureusement le format du code-barres n'est pas bon , dommage.....
Un code-barres, pour mon travail en tout cas, n'est lisible que sur Word.
Voici mon code VBA EXCEL.
-------------------------------------------
Sub barcod()
     
    Dim x As Variant
    Dim nbl As Variant
    nbl = InputBox("n° de B.L ?" )
    x = InputBox("combien ?" )
     
Range("a1" ).Select
For compteur = 1 To x
If compteur Mod 2 > 0 Then
    ligne = Fix(compteur / 2) + 1
    col = 1
Else: ligne = compteur / 2
    col = 2
End If
ActiveSheet.Range(Chr(64 + col) & ligne) = "@N00" & nbl & "@"
 
Next compteur
 
End Sub
---------------------------------------------
Si quelqu'un peut me venir en aide pour créer le même code que ci-dessus mais sur WORD ?
Merci d'avance,
HBB

Reply

Marsh Posté le 27-03-2006 à 10:11:25   

Reply

Marsh Posté le 27-03-2006 à 21:51:13    

Bonsoir,
Voilà le même code sous word, mais je ne crois pas que l'on puisse avoir un code-barre, tout au moins avec word 97

Sub barcod()
    Dim x As Variant
    Dim nbl As Variant
    nbl = InputBox("n° de B.L ?" )
    x = InputBox("combien ?" )
    If x Mod 2 = i Then a = 1
Application.Documents.Add
ActiveDocument.Tables.Add Range:=Selection.Range, NumRows:=x / 2 + a, NumColumns:=2
ActiveDocument.Tables(1).Cell(1, 1).Select
For compteur = 1 To x
    If compteur Mod 2 > 0 Then
        Ligne = Fix(compteur / 2) + 1
        col = 1
    Else: Ligne = compteur / 2
        col = 2
    End If
    ActiveDocument.Tables(1).Cell(Ligne, col).Select
    Selection.text = "@N00" & nbl & "@"
Next compteur
End Sub


J'espère que cela pourra t'aider.
Epéna

Reply

Marsh Posté le 28-03-2006 à 10:43:53    

Bonjour Epena,
 
Merci beaucoup pour ton code, ça marche parfaitement.
J'ai ajouté un autoOpen et c'est génial.
Pour ton info, j'ai la police de caractère "barcod39" dans le PC de mon boulot.
Salut et à bientôt et merci encore.
hbb

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed