Uso y automatización de códigos de barras con VBA en Word
Incrustación del Control ActiveBarcode en un documento:
En este ejemplo se colocará un control de código de barras en la posición de los cursores. A continuación, puede modificar el objeto utilizando la variable ab:
Dim ab As Object Set ab = Selection.InlineShapes.AddOLEObject(ClassType:="ACTIVEBARCODE.BarcodeCtrl.1", FileName:="", LinkToFile:=False, DisplayAsIcon:=False)Establece las propiedades estándar (altura, anchura) del objeto utilizando la variable ab:
ab.Width = 200 ab.Height = 120Puede acceder a las propiedades y métodos del objeto de código de barras mediante la propiedad OLEFormat.Object:
ab.OLEFormat.Object.Type = 6 ab.OLEFormat.Object.Text = "987698769812"También puedes utilizar una forma más limpia de acceder a las propiedades creando y utilizando una variable, por ejemplo, llamada abObjeto:
Dim abObject As Object With ab.OLEFormat .Activate Set abObject = .Object End With abObject.Type = 6 abObject.Text = "987698769812"Mediante la siguiente llamada puede convertir el objeto de código de barras en un InlineShape. Tenga en cuenta que no puede cambiar el código de barras después de la conversión.
ab.ConvertToShapeSi ya no necesita el control, puede eliminarlo del documento:
ab.DeleteSugerencia: Si es necesario que Windows procese los próximos eventos (a menudo denominado KeepWindowsAlive) dentro de una macro, puede forzarlo mediante la siguiente función VBA:
DoEventsEsto puede ser necesario, por ejemplo, si el Control debe dibujarse nuevo.