Fijate con esto, es con ADOX, otra posibilidad es con OpenSchema de ADO:
Dim cnt As Connection, cat As Catalog, oIndex As Index, oColumn As Column
Set cnt = New Connection
cnt.Open "MiConnectionString"
Set cat = New Catalog
Set cat.ActiveConnection = cnt
With cat.Tables.Item("MiTabla")
For Each oIndex In .Indexes
If oIndex.PrimaryKey Then
For Each oColumn In oIndex.Columns
Debug.Print oColumn.Name
Next
End If
Next
End With