Сам нашёл ответ
Код:
Option Explicit
Dim rs As ADODB.Recordset
Dim conn As ADODB.Connection
Dim strSQLString As String ''sql query string
Private Sub Form_Load()
Set conn = New ADODB.Connection ''connection object
Set rs = New ADODB.Recordset ''recordset object
conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\db1.mdb;Persist Security Info=False"
conn.Open
strSQLString = "select * from tblFields order by Fields"
rs.Open strSQLString, conn, adOpenDynamic, adLockPessimistic
Do Until rs.EOF
cmbFields.AddItem rs.Fields("Fields").Value
rs.MoveNext
Loop
Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\db1.mdb;Persist Security Info=False"
Adodc1.RecordSource = "select * from tblNumbers order by Number"
Set dGrid.DataSource = Adodc1
Adodc1.Refresh
dGrid.Columns(1).Button = True
End Sub
Private Sub dGrid_ButtonClick(ByVal ColIndex As Integer)
cmbFields.Width = dGrid.Columns(1).Width
cmbFields.Left = dGrid.Columns(1).Left + dGrid.Left
cmbFields.Top = dGrid.Columns(1).Top + dGrid.Top + dGrid.RowTop(dGrid.Row) - dGrid.RowHeight
cmbFields.Visible = True
End Sub
Private Sub dGrid_Click()
cmbFields.Visible = False
End Sub
Private Sub cmbFields_Click()
dGrid.Columns(1).Text = cmbFields.Text
cmbFields.Visible = False
End Sub