Utilizzo e automazione dei codici a barre con VBA in Word
È possibile utilizzare VisualBasic for Applications (VBA) per risolvere molti problemi in Word. Qui vi mostreremo come incorporare, utilizzare ed eliminare il controllo ActiveBarcode con VBA:
Incorporare il controllo ActiveBarcode in un documento:
In questo esempio, un controllo di codice a barre verrà posizionato nella posizione del cursore. È quindi possibile modificare l'oggetto utilizzando la variabile ab:
Dim ab As Object Set ab = Selection.InlineShapes.AddOLEObject(ClassType:="ACTIVEBARCODE.BarcodeCtrl.1", FileName:="", LinkToFile:=False, DisplayAsIcon:=False)Impostare le proprietà standard (altezza, larghezza) dell'oggetto utilizzando la variabile ab:
ab.Width = 200 ab.Height = 120È possibile accedere alle proprietà e metodi dell'oggetto codice a barre utilizzando la proprietà OLEFormat.Object:
ab.OLEFormat.Object.Type = 6 ab.OLEFormat.Object.Text = "987698769812"È anche possibile utilizzare un modo più pulito per accedere alle proprietà, creando e utilizzando una variabile, ad esempio denominata abObject:
Dim abObject As Object With ab.OLEFormat .Activate Set abObject = .Object End With abObject.Type = 6 abObject.Text = "987698769812"Con la seguente chiamata è possibile eseguire il cast dell'oggetto codice a barre in un InlineShape. Si noti che non è possibile modificare il codice a barre dopo la conversione.
ab.ConvertToShapeSe il controllo non è più necessario, è possibile eliminarlo dal documento:
ab.DeleteSuggerimento: se è necessario che Windows elabori gli eventi imminenti (spesso denominati "KeepWindowsAlive") all'interno di una macro, è possibile forzarli utilizzando la seguente funzione VBA:
DoEventsQuesto può essere necessario, ad esempio se il Controllo deve disegnare se stesso in modo nuovo.