Word
Barcode Objekte mit VBA verwenden

 Standard oder höher

Verwendung und Automatisierung von Barcodes mit VBA

Word 365, 2024, 2021, 2019, 2016, 2013, 2010, 2007, 2003
Sie können VisualBasic for Applications (VBA) verwenden, um viele Aufgaben in Word zu lösen. Hier zeigen wir Ihnen, wie Sie das ActiveBarcode-Steuerelement mit VBA einbetten, verwenden und löschen können:

Einbetten des ActiveBarcode Controls in ein Dokument:
In diesem Beispiel wird ein Barcode-Steuerelement an der Position des Cursors platziert. Dann können Sie das Objekt über die Variable ab ändern:
Dim ab As Object
Set ab = Selection.InlineShapes.AddOLEObject(ClassType:="ACTIVEBARCODE.BarcodeCtrl.1",
  FileName:="", LinkToFile:=False, DisplayAsIcon:=False)
Setzen Sie die Standardeigenschaften (Höhe, Breite) des Objekts mit Hilfe der Variablen ab:
ab.Width = 200
ab.Height = 120
Sie können auf die Eigenschaften und Methoden des Barcode-Objekts zugreifen, indem Sie die Eigenschaft OLEFormat.Object verwenden:
ab.OLEFormat.Object.Type = 6
ab.OLEFormat.Object.Text = "987698769812"
Sie können auch eine sauberere Methode verwenden, um auf die Eigenschaften zuzugreifen, indem Sie eine Variable erstellen und verwenden, z.B. mit dem Namen abObject:
Dim abObject As Object
With ab.OLEFormat
  .Activate
  Set abObject = .Object
End With

abObject.Type = 6
abObject.Text = "987698769812"
Mit dem folgenden Aufruf können Sie das Barcode-Objekt in ein InlineShape umwandeln. Beachten Sie, dass Sie den Barcode nach der Konvertierung nicht mehr ändern können.
ab.ConvertToShape
Wenn Sie das Steuerelement nicht mehr benötigen, können Sie es aus dem Dokument löschen:
 ab.Delete
Tipp: Wenn es erforderlich ist, dass Windows anstehende Ereignisse (oft als KeepWindowsAlive bezeichnet) innerhalb eines Makros verarbeitet, können Sie dies mit der folgenden VBA-Funktion erzwingen:
DoEvents
Dies kann notwendig sein, z.B. wenn sich das Control neu zeichnen muss.

ActiveBarcode: Info
Word Macro (VBA), um Barcodes zu Seiten hinzuzufügen.
für Word 365, 2024, 2021, 2019, 2016, 2013, 2010
Dieses Makro zeigt, wie jeder Seite ein Barcode hinzugefügt wird, der einen variablen Inhalt und eine Seitenzahl enthält.

Barcodes in Word-Serienbriefen verwenden

Word 365, 2024, 2021, 2019, 2016, 2013, 2010, 2007, 2003

1


ActiveBarcode: Barcodes in Word-Serienbriefen verwenden.
Öffnen Sie ein vorhandenes Seriendruckdokument oder erstellen Sie ein neues.
2


Fügen Sie das Barcode-Objekt in Ihr Seriendruckdokument ein. Platzieren Sie es an der gewünschten Stelle im Dokument und legen Sie die Eigenschaften des Objekts fest, z. B. Art und Größe des Strichcodes.

Das sieht dann zum Beispiel so aus wie auf dem folgenden Screenshot. Beachten Sie den Namen des Barcode-Objekts, der hier gelb hervorgehoben ist. Normalerweise ist dies Barcode1. ActiveBarcode: Barcode, Word


3


Für den Seriendruck ist ein Makro erforderlich. Sie können das folgende Makro hinzufügen. Kopieren Sie es in die Zwischenablage und fügen Sie es von dort in den Visual Basic for Applications-Editor von Word ein:
Sub MailMerge_example_with_ActiveBarcode()
 ' Macro shows how to print barcodes in a mail merge.
 if MsgBox("Do you want to print mail merged documents?", vbYesNo, "Question") = vbYes Then
   'counter to zero
   num = 0
   'first record is number one
   ActiveDocument.MailMerge.DataSource.ActiveRecord = 1
   Do
    ' Fill ActiveBarcode text property now
    ActiveDocument.Barcode1.Text = ActiveDocument.MailMerge.DataSource.DataFields("Productcode").Value
    ' do not prompt for printing...
    Options.PrintBackground = True
    ' print page
    ActiveDocument.PrintOut
    ' recognize old record
    lastone = ActiveDocument.MailMerge.DataSource.ActiveRecord
    ' select next record
    ActiveDocument.MailMerge.DataSource.ActiveRecord = wdNextRecord
    'count
    num = num + 1
    ' check if there are new ones
   Loop While ActiveDocument.MailMerge.DataSource.ActiveRecord <> lastone
   ' notify user
   MsgBox (Str(num) + " pages printed!")
 End If
 End Sub

4


Das Ergebnis sieht wie folgt aus. Auf dem Screenshot können Sie auch sehen, wo das Makro eingefügt wird. ActiveBarcode: Barcode, Word


5


Passen Sie nun das Makro an Ihr Mail-Merger-Dokument an:

Wenn der Name Ihres Barcode-Objekts nicht Barcode1 lautet, ändern Sie ihn im Makro - linke gelbe Markierung im Screenshot.

Nun ändern Sie den Feldnamen aus Ihrer Datenquelle, der für den Barcode verwendet werden soll. In diesem Beispiel wird Produktcode verwendet - rechte gelbe Markierung im Screenshot. Ändern Sie den Namen innerhalb der Anführungszeichen. ActiveBarcode: Barcode, Word


6


Speichern Sie das Dokument und starten Sie das Makro für einen Testdruck.

Tipp: Beginnen Sie den Testausdruck mit einer kleinen Datenmenge, damit es im Falle eines Fehlers weniger Fehldrucke gibt. ActiveBarcode: Barcode, Word


7


Erledigt.

Info Wenn Sie das Makro in Normal.dot und nicht im Dokument selbst platziert haben, darf sich das Dokument nicht im Entwurfsmodus befinden, wenn Sie das Makro ausführen. Andernfalls tritt ein Fehler auf. Schalten Sie daher den Entwurfsmodus aus, bevor Sie das Makro ausführen.