Ciao riccio748,
ti posto il seguente esempio, che ho dovuto adattarlo per collegarmi con un DB Access già disponibile, per effettuare delle prove. Non ti dovrebbe essere difficile modificarlo secondo le tue necessità. Il codice è migliorabile.
Inserisci due Txt, un ComboBox ed un CommandButton:
codice:
Option Explicit
Dim DataConnessione As String
Dim intNRecord As Integer
' Dichiara due matrici:
Dim Dep() As String
Dim Reg() As String
'--------------------------------------------------------------------------
Private Sub Command1_Click()
On Error GoTo ErrHandler
Dim ConPr1 As New ADODB.Connection
Dim RSTpr1 As New ADODB.Recordset
Dim RSTprXC As New ADODB.Recordset
Dim r As Integer
' Dimensiona due matrici:
ReDim Dep(0 To intNRecord)
ReDim Reg(0 To intNRecord)
'Esegue la connessione con il DataBase:
With ConPr1
.ConnectionString = DataConnessione
'tipo di cursore:
.CursorLocation = adUseClient
'nessuna limitazione:
.Mode = adModeShareDenyNone
.CommandTimeout = 15
.Open
End With
' Esegue il controllo sulla TblParti per verificare il numero di record presenti:
RSTprXC.Source = "SELECT IDParti FROM TblParti;"
RSTprXC.Open , ConPr1, adOpenStatic, adLockReadOnly
RSTprXC.MoveLast
' Acquisisce il numero di records presenti nella Tabella:
intNRecord = RSTprXC.RecordCount
' Chiude / cancella il recordSet:
RSTprXC.Close
Set RSTprXC = Nothing
' Porta i records nella ComboBox:
RSTpr1.Source = "SELECT Deposito, RegLodi FROM TblParti;"
RSTpr1.Open , ConPr1, adOpenDynamic, adLockOptimistic
For r = 0 To (intNRecord - 1)
Combo1.AddItem (RSTpr1("Deposito") & Space(3) & RSTpr1("RegLodi"))
Dep(r) = RSTpr1("Deposito")
Reg(r) = RSTpr1("RegLodi")
RSTpr1.MoveNext
ReDim Preserve Dep(intNRecord - 1)
ReDim Preserve Reg(intNRecord - 1)
Next r
' Visualizza la prima voce dell'elenco:
Combo1.ListIndex = 0
'Chiude e cancella il recordSet:
RSTpr1.Close
Set RSTpr1 = Nothing
'Chiude e cancella la connessione:
ConPr1.Close
Set ConPr1 = Nothing
ErrHandler:
If Err.Number <> 0 Then
MsgBox Err.Description & Chr(13) _
& "Si è verificato un errore nella procedura." & Chr(13) _
& "Controllare e ripetere l'operazione.", vbInformation, "....."
Err.Clear
'Chiude e cancella il recordSet:
RSTpr1.Close
Set RSTpr1 = Nothing
'Chiude e cancella la connessione:
ConPr1.Close
Set ConPr1 = Nothing
Exit Sub
End If
End Sub
'--------------------------------------------------------------------------
Private Sub Form_Load()
' Stringa di connessione Senza password:
DataConnessione = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\TuoDB.mdb;Persist Security Info=False;"
End Sub
'--------------------------------------------------------------------------
Private Sub Combo1_Click()
' Visualizza i dati nelle Txt al click sulla voce della ComboBox:
Text1.Text = Dep(Combo1.ListIndex)
Text2.Text = Reg(Combo1.ListIndex)
End Sub