Метод TextRange.InsertBarcode (Publisher)
Вставляет поле штрихового кода в конец текстового диапазона, представленного родительским объектом TextRange .
Синтаксис
expression. InsertBarcode
Выражение Переменная, представляющая объект TextRange .
Возвращаемое значение
TextRange
Замечания
В идеале следует создать надстройку для Microsoft Publisher для обработки событий MailMergeGenerateBarcode и MailMergeInsertBarcode . Если надстройка или код не содержит обработчиков для этих событий, метод InsertBarcode возвращает ошибку.
В следующем примере показано, как обрабатывать эти события с помощью кода Microsoft Visual Basic для приложений (VBA) в редакторе Visual Basic.
Если вы хотите включить вставку штрихкодов в публикацию из пользовательского интерфейса, код надстройки или VBA также должен задать для свойства InsertBarcodeVisible значение True.
Пример
В следующем примере показано, как использовать метод InsertBarcode для вставки поля штрихового кода в текстовое поле в публикации. Вставьте этот код в проект VBA и выполните процедуру AttachToEvents перед выполнением процедуры InsertBarcode_Example .
Перед выполнением кода в этом примере используйте метод MailMerge.OpenDataSource для подключения к источнику данных. Источник данных должен содержать столбец штрих-кода, в котором перечислены линейчатые коды для всех получателей слияния. Замените штрихкодColumnIndex в обработчике событий MailMergeGenerateBarcode в коде номером индекса столбца источника данных, содержащего сведения о штрихкоде.
Выполните следующий код в окне редактора Visual Basic, а не в диалоговом окне Макросы (в меню Сервис наведите указатель мыши на пункт Макрос, а затем выберите Макросы).
Public WithEvents pubApplication As Publisher.Application
Private Sub pubApplication_MailMergeGenerateBarcode(ByVal Doc As Document, bstrString As String)
bstrString = pubApplication.ActiveDocument.MailMerge.DataSource.DataFields.Item(barcodeColumnIndex).Value
End Sub
Private Sub pubApplication_MailMergeInsertBarcode(ByVal Doc As Document, OkToInsert As Boolean)
OkToInsert = True
End Sub
Public Sub InsertBarcode_Example()
Dim pubTextRange As Publisher.TextRange
Dim pubShape As Publisher.Shape
Set pubShape = ThisDocument.Pages(1).Shapes.AddTextbox(pbTextOrientationHorizontal, 100, 100, 500, 500)
Set pubTextRange = pubShape.TextFrame.TextRange
pubTextRange.InsertBarcode
End Sub
Public Sub AttachToEvents()
Set pubApplication = Application
End Sub
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.