使用 VBA 和自动处理条形码 Word
您可以使用 VisualBasic for Applications (VBA) 解决 Word 中的许多问题。 在此,我们将向您展示如何使用 VBA 嵌入、使用和删除 ActiveBarcode 控件:
将 ActiveBarcode 控件嵌入文档:
在本例中,将在光标位置放置一个条形码控件。然后,您可以使用变量 ab 修改对象:
Dim ab As Object Set ab = Selection.InlineShapes.AddOLEObject(ClassType:="ACTIVEBARCODE.BarcodeCtrl.1", FileName:="", LinkToFile:=False, DisplayAsIcon:=False)使用变量 ab 设置对象的标准属性(高度、宽度):
ab.Width = 200 ab.Height = 120您可以使用属性 OLEFormat.Object 访问条形码对象的 属性和 方法:
ab.OLEFormat.Object.Type = 6 ab.OLEFormat.Object.Text = "987698769812"您还可以通过创建和使用一个变量(例如名为 abObject 的变量),以更简洁的方式访问属性:
Dim abObject As Object With ab.OLEFormat .Activate Set abObject = .Object End With abObject.Type = 6 abObject.Text = "987698769812"通过以下调用,您可以将条形码对象转换为 InlineShape。请注意,转换后不能更改条形码。
ab.ConvertToShape如果您不再需要该控件,可以将其从文档中删除:
ab.Delete提示:如果需要 Windows 在宏中处理即将发生的事件(通常称为 KeepWindowsAlive),您可以使用以下 VBA 函数强制进行处理:
DoEvents这可能是必要的,例如,如果控件必须重新绘制。