Newsgroup: it.comp.lang.visual-basic
Titolo: Combo box riempimento da tabella

Ciao a tutti sono un novizio, vorrei riempire una combobox con i dati
provenienti da tabella,ho messo l'ogetto adodb sulla form ma ora come carico
?
Non esiste un oggetto già con funzionalità più avanzate della combobox ?
grazie

due strade:
1) usi la DBCombo, ma non mi piace:
2) usi questa Sub:
Public Sub RiempiCombo(Controllo As ComboBox, Tabella As String, Campo As
String)
Dim Temp As ADODB.Recordset
Controllo.Clear
Set Temp = New ADODB.Recordset
Temp.Open Tabella, Archivio, adOpenForwardOnly, adLockReadOnly
Do
    Controllo.AddItem Temp(Campo)
    Temp.MoveNext
Loop Until Temp.EOF = True
Temp.Close
Set Temp = Nothing
End Sub
Questa sub, che uso io di solito, riempie una combobox, passandoli la
combobox da riempire, la tabella e il campo che ci interessa. Archivio č una
ADODB.Connection definita al di fuori della sub, che si assume giŕ aperta e
funzionante!!!
good coding!!!
--
Damiani Liborio Igor
ig...@igordamiani.it
 - 
dam...@italiainfiera.it
 - 
idam...@hotmail.com
http://www.igordamiani.it
ICQ : 11847262


AAAHHHGGG!! La variabilona globalona!!!!
<sottovoce>
non farti sentire in giro a dire che usi di queste cose
</sottovoce>
Salutoni
Sergio
P.S. oh, si scherza, se ti sei offeso mi spiace.....

P.S. oh, si scherza, se ti sei offeso mi spiace.....
Kylnas

 una connection?
non credo siano nè di più nè di meno di quelle di una qualsiasi variabile
globale, tranne forse quando ci si connette a provider che hanno un numero
massimo di connessioni gestibili.
Nello specifico caso rendono più difficilmente "esportabile" il codice,
ancor più specificamente il post perde un po' del significato "didattico"
Salutoni
Sergio
P.S. non dirlo in giro... anch'io le uso, in particolare per le
connessioni....

innanzitutto mi sono offeso a morte, perciň la prossima volta che
risponderai ad uno dei miei post, contatterň immediatamente SotterratoVivo
che in uno dei suoi post ha detto di aver messo su un'azienda piů o meno
legale per la produzione/vendita/spaccio/fornimento di materiale
nucleare.......
perciň te ne sgancerň una via e-mail, direttamente, nell'allegato......
:-))))))
a parte scherzi, č una Sub che ho scritto migliaia e migliaia di secondi fa;
a quell'epoca, ero solito inizializzare una connection nella sub Main, la
lasciavo aperta per tutta l'esecuzione del programma e la chiudevo solo alla
fine......fai tu......
:-)))
adesso ovviamente farei diversamente, ma non ho voglia di mettermi lě a
sistemare i vecchi progetti......
cmq hai fatto bene a sottilinearlo, cosě un newbie non fa piů gli stessi
errori o imprecisioni che feci io a mio tempo......
grazie, e ciao!!!!
non ti dico good coding, a te!!!!!!
:-))


 ha scritto nel messaggio
news:as00b5$jih$1...@fata.cs.interbusiness.it...

Io uso questa, che comunque è molto simile a quella già citata
Da notare che se a NomeCampo passi "DISTINCT NOME CAMPO" puoi anche fare
la distinct
Ps: è una delle routine che ci sono nella dll che ho mandato al SC
Ciao
Public Sub PopolaOggetto(cn As Object, Oggetto As Object, ByVal
NomeTabella As String, _
ByVal NomeCampo As String, Optional ByVal Where As String, Optional
ByVal OrderBy As String)
    'popola un combo o listbox con i dati provenienti da un database
    On Error GoTo GestioneErrori
    Oggetto.Clear
    Set clsCn = cn
    Dim RsQuery As String
    RsQuery = "SELECT " & NomeCampo & " FROM " & NomeTabella & " " &
Where & " " & OrderBy
    Dim rsPopola As ADODB.Recordset
    Set rsPopola = New ADODB.Recordset
    rsPopola.Open RsQuery, clsCn, adOpenForwardOnly, _
    adLockOptimistic, adCmdText
    If rsPopola.Eof and rspopola.Bof Then Exit Sub
    rsPopola.MoveFirst
    Do Until rsPopola.EOF
        Oggetto.AddItem (rsPopola(0))
        rsPopola.MoveNext
    Loop
    rsPopola.Close
    Set rsPopola = Nothing
popola_exit:
    Exit Sub
GestioneErrori:
    Select Case Err.Number
    Case Else
        MsgBox Err.Number & " " & Err.Description & " nella routine
popola"
    End Select
End Sub