Word
Code-barres avec VBA

 Standard ou plus

Utilisation et automatisation des codes à barres avec VBA dans Word

Vous pouvez utiliser VisualBasic for Applications (VBA) pour résoudre de nombreux problèmes dans Word. Nous allons vous montrer comment intégrer, utiliser et supprimer le contrôle ActiveBarcode avec VBA:

Intégrer le contrôle ActiveBarcode dans un document:
Dans cet exemple, un contrôle de code-barres sera placé à la position du curseur. Vous pouvez ensuite modifier l'objet à l'aide de la variable ab:

Dim ab As Object
Set ab = Selection.InlineShapes.AddOLEObject(ClassType:="ACTIVEBARCODE.BarcodeCtrl.1",
  FileName:="", LinkToFile:=False, DisplayAsIcon:=False)
Définir les propriétés standard (hauteur, largeur) de l'objet en utilisant la variable ab:
ab.Width = 200
ab.Height = 120
Vous pouvez accéder aux properties et methods de l'objet code-barres en utilisant la propriété OLEFormat.Object:
ab.OLEFormat.Object.Type = 6
ab.OLEFormat.Object.Text = "987698769812"
Vous pouvez également utiliser une méthode plus propre pour accéder aux propriétés en créant et en utilisant une variable, par exemple nommée abObject:
Dim abObject As Object
With ab.OLEFormat
  .Activate
  Set abObject = .Object
End With

abObject.Type = 6
abObject.Text = "987698769812"
En utilisant l'appel suivant, vous pouvez convertir l'objet code-barres en une InlineShape. Notez que vous ne pouvez pas modifier le code-barres après la conversion.
ab.ConvertToShape
Si vous n'avez plus besoin du contrôle, vous pouvez le supprimer du document:
 ab.Delete
Conseil : s'il est nécessaire que Windows traite les événements à venir (souvent appelés "KeepWindowsAlive") dans une macro, vous pouvez le forcer en utilisant la fonction VBA suivante :
DoEvents
Cela peut s'avérer nécessaire, par exemple si le Contrôleur doit se redessiner.