Recordset non associati PDF Stampa E-mail
Scritto da Giorgio Rancati   
Mercoledì 29 Marzo 2006 01:00

A volte può insorgere la necessità di dover popolare una o più caselle di riepilogo/combinate con una serie di dati che non provengono dalle tabelle di un database. Un esempio può essere quello di avere una o più liste  ordinate alfabeticamente con i files contenuti in una cartella, il problema si può risolvere in molti modi, uno di questi è l'uso di un recordset non associato.

 

Esempio:

Create una nuova maschera, inserite tre caselle di riepilogo assegnando rispettivamente i nomi: Elenco0,Elenco1 ed Elenco2
Premere il menu Visualizza-->Codice e incollate il codice seguente.
 

Private Sub Form_Load()


    Dim Cartella As String 'Cartella files
    Dim NomeFile As String 'Nome file
    Dim Rs As New ADODB.Recordset
    'Creo il campo Nomefile nel recordset
    Rs.Fields.Append "NomeFile", adVarChar, 255
    'Apro il recordset
    Rs.Open, , adOpenDynamic, adLockOptimistic
    'Imposto il percorso dei files da cercare
    Cartella = Environ("HOMEDRIVE") + Environ("HOMEPATH") + "\Documenti\"

    'Popolo il recordset   
    NomeFile = Dir(Cartella)        Do While NomeFile <> ""
        Rs.AddNew Array("NomeFile"), Array(NomeFile)
        NomeFile = Dir
    Loop     'Imposto l'ordinamento
    Rs.Sort = "NomeFile ASC"     'Imposto il filtro sui files mdb o adp
    Rs.Filter = "NomeFile LIKE '%.mdb%' OR NomeFile LIKE '%.adp%'"     'Popolo la prima casella combinata
    Set Me.Elenco0.Recordset = Rs     'Imposto il filtro sui files di word
    Rs.Filter = "NomeFile LIKE '%.doc%'"     'Popolo la seconda casella combinata
    Set Me.Elenco1.Recordset = Rs
 
    'Imposto il filtro sui files di Excel
    Rs.Filter = "NomeFile LIKE '%.xl%'"    'Popolo la terza casella combinata
    Set Me.Elenco2.Recordset = Rs
 
    Rs.Close
    Set Rs = Nothing End Sub

Compilate e aprite la maschera, la prima casella di riepilogo verrà popolata con i files Mdb e Adp di Access, le seconda con i files Doc di Word e la terza con i files Xl? di Excel.

 


Sistema operativo: Win32
Applicazioni: Access 2000, Access 2002/XP, Access 2003