ODSOColumns Object

Microsoft Office Visual Basic

ODSOColumns Object

ODSOColumns ODSOColumn

A collection of ODSOColumn objects that represent the data fields in a mail merge data source.

Using the ODSOColumns object

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