Поделиться через


Метод 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 и обратная связь.