PDA

Visualizza la versione completa : [ACCESS] Selezione nomi tabelle


lestat85
24-12-2008, 11:57
salve ragazzi,
avrei un problema! Ho necessità di visualizzare in una combobox di una maschera i nomi di tutte le tabelle presenti nel mio db. Come posso fare? Sempre se è possibile!

Grazie in anticipo per le eventuali risposte e buone feste.

piesse78
25-12-2008, 16:27
potresti creare una tabella "di servizio" dove salvi il nome di tutte le tabelle presenti nel tuo db, inserendole manualmente.
Poi, crei una query che recupera i nomi delle tabelle dalla tabella di servizio e la imposti come sorgente della combobox.
Se invece vuoi costruire "dinamicamente" il contenuto della tua combobox, la cosa è un po' più complicata ma si può fare.
L'idea è sempre quella di utilizzare una tabella di servizio, ma di riempirla non "a mano" ma tramite codice.

:ciauz:

lestat85
26-12-2008, 19:54
Grazie per l'idea...anche io avevo pensato la stessa cosa e propendo per l'idea della procedura dinamica...solo che non saprei come realizzarla...qualche consigli?? Anche sul codice??
Grazie e AUGURI A TUTTI

DragonOfLight
26-12-2008, 20:50
Per ricavare i nomi delle tabelle contenute nel file access, puoi utilizzare il seguente codice, adattandolo secondo le tue esigenze:


Function ricavaElencoTabelle() As Variant
Dim db As Database, tb As TableDef
Dim NomeTabella() As String, i As Long
i = 0
Set db = CurrentDb
For Each tb In db.TableDefs
ReDim Preserve NomeTabella(i)
NomeTabella(i) = tb.Name
i = i + 1
Next
db.Close
ricavaElencoTabelle = NomeTabella
End Function


La funzione ritorna un vettore contenente i nomi delle tabelle contenute nel database.

lestat85
07-01-2009, 09:59
Originariamente inviato da DragonOfLight
Per ricavare i nomi delle tabelle contenute nel file access, puoi utilizzare il seguente codice, adattandolo secondo le tue esigenze:


Function ricavaElencoTabelle() As Variant
Dim db As Database, tb As TableDef
Dim NomeTabella() As String, i As Long
i = 0
Set db = CurrentDb
For Each tb In db.TableDefs
ReDim Preserve NomeTabella(i)
NomeTabella(i) = tb.Name
i = i + 1
Next
db.Close
ricavaElencoTabelle = NomeTabella
End Function


La funzione ritorna un vettore contenente i nomi delle tabelle contenute nel database.

Grazie mille!!! Era proprio quello di cui ho bisogno!!! Se voglio estrarre i nomi delle query presenti nel database penso che la situazione sia analoga giusto?

DragonOfLight
07-01-2009, 20:47
qui lo dico e qui lo nego... Si certo, in modo similare puoi ricavare l'elenco di ogni elemento contenuto nel file Access. :D

lestat85
08-01-2009, 09:30
Originariamente inviato da DragonOfLight
qui lo dico e qui lo nego... Si certo, in modo similare puoi ricavare l'elenco di ogni elemento contenuto nel file Access. :D

Ok grazie!!! :ciauz:

Loading