Метод MailMergeDataSources.Item (Издатель)
Возвращает объект MailMergeDataSource в указанной позиции индекса в коллекции MailMergeDataSources .
Синтаксис
expression. Item (varIndex)
Выражение Переменная, представляющая объект MailMergeDataSources .
Параметры
Имя | Обязательный или необязательный | Тип данных | Описание |
---|---|---|---|
varIndex | Обязательный | Variant | Номер индекса или имя возвращаемого объекта. |
Возвращаемое значение
MailMergeDataSource
Замечания
Метод Item является членом коллекции MailMergeDataSources по умолчанию.
Если в активном документе есть только один объект MailMergeDataSource , коллекция MailMergeDataSources пуста. В этом случае при попытке использовать свойство DataSources объекта MailMergeDataSource для получения коллекции источников данных, microsoft Publisher вернет ошибку.
Пример
В следующем макросе Microsoft Visual Basic для приложений (VBA) показано, как получить имена всех подключенных источников данных в коллекции MailMergeDataSources в активном документе. Он использует свойство IsDataSourceConnected активного документа, чтобы определить, подключен ли источник данных.
Если подключен один или несколько источников данных, макрос использует свойство Count для определения количества подключенных источников данных.
Если подключен только один источник данных, макрос выводит имя этого источника данных в окне Интерпретация. Если подключено несколько источников данных, макрос использует метод Item для итерации коллекции и свойство MailMergeDataSource.Name для вывода имени каждого подключенного источника данных в окне Интерпретация.
Public Sub Item_Example()
Dim pubMailMergeDataSources As Publisher.MailMergeDataSources
Dim pubMailMergeDataSource As Publisher.MailMergeDataSource
Dim lngCount As Long
Dim intCounter As Integer
If ThisDocument.IsDataSourceConnected Then
Set pubMailMergeDataSources = ThisDocument.MailMerge.DataSource.DataSources
lngCount = pubMailMergeDataSources.Count
If lngCount > 1 Then
' More than one data source is connected.
For intCounter = 1 To lngCount
Debug.Print pubMailMergeDataSources.Item(intCounter).Name
Next
Else
' Only one data source is connected.
Set pubMailMergeDataSource = ThisDocument.MailMerge.DataSource
Debug.Print "Only one data source ("; pubMailMergeDataSource.Name; ") is connected."
End If
Else
Debug.Print "No data sources are connected."
End If
End Sub
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.