ODSOColumns object (Office)
A collection of ODSOColumn objects that represent the data fields in a mail merge data source.
Example
Use the Columns property to return the ODSOColumns collection. The following example displays the field names in the data source attached to the active publication.
Sub ShowFieldNames()
Dim appOffice As OfficeDataSourceObject
Dim intCount As Integer
Set appOffice = Application.OfficeDataSourceObject
appOffice.Open bstrConnect:="DRIVER=SQL Server;SERVER=ServerName;" & _
"UID=user;PWD=;DATABASE=Northwind", bstrTable:="Employees"
With appOffice.Columns
For intCount = 1 To .Count
MsgBox "Column Name: " & .Item(intCount).Name
Next
End With
End Sub
Use Columns(index), where index is the data field name or the index number, to return a single ODSOColumn object. The index number represents the position of the data field in the mail merge data source. This example retrieves the name of the first field and value of the first record of the FirstName field in the data source attached to the active publication.
Sub GetDataFromSource()
Dim appOffice As OfficeDataSourceObject
Set appOffice = Application.OfficeDataSourceObject
appOffice.Open bstrConnect:="DRIVER=SQL Server;SERVER=ServerName;" & _
"UID=user;PWD=;DATABASE=Northwind", bstrTable:="Employees"
With appOffice.Columns
MsgBox "Field Name: " & .Columns(1).Name & _
"Value: " & .Columns("FirstName").Value
End With
End Sub
See also
Support and feedback
Have questions or feedback about Office VBA or this documentation? Please see Office VBA support and feedback for guidance about the ways you can receive support and provide feedback.
Feedback
https://aka.ms/ContentUserFeedback.
Coming soon: Throughout 2024 we will be phasing out GitHub Issues as the feedback mechanism for content and replacing it with a new feedback system. For more information see:Submit and view feedback for