Salve, ecco tutto:
devo caricare in un combo box il nome di ogni file presente in una determinata cartella.
Grazie.
Salve, ecco tutto:
devo caricare in un combo box il nome di ogni file presente in una determinata cartella.
Grazie.
Il problema qual'è recuperare il nome dei file o inserirli nella combo?
Appunto vedere il nome di ogni singolo file, (togliere l'estensione) ed inserire la parte restante all'interno del combo box.
es.
Lista file
prova1.mdb
prova2.mdb
prova3.mdb
etc..
lista combo
prova1
prova2
prova3
Il FileListBox non fa al caso tuo?
Comunque ti do alcuni spunti
Forse ci sono alcuni errori, l'ho estratto da un mio prog eliminando qualche riga di cod., ma non l'ho controllato.codice:'questo codice legge i nomi di tuttr le dir contenute a loro volta in una directory, prova a modificarlo MyPath = "c:\cash&carry\dat\" ' Imposta il percorso. MyName = Dir(MyPath, vbDirectory) ' Recupera la prima voce. Do While MyName <> "" ' Avvia il ciclo. ' Ignora la directory corrente e quella di livello superiore. If MyName <> "." And MyName <> ".." Then ' Usa il confronto bit per bit per verificare se MyName è una directory. If (GetAttr(MyPath & MyName) And vbDirectory) = vbDirectory Then 'costruisco l'array dei percorsi varPathAnno = varPathAnno & ",\" & MyName ' se rappresenta una directory. End If End If MyName = Dir ' Legge la voce successiva. Loop varPathAnno = Split(varPathAnno, ",") 'popolo la combo For i=0 to UBound(varPathAnno) comboDir.AddItem varPathAnno(i) next
Il tuo codice a me sembra di più l'esempio della guida che lista le directory...
Prova questo: (testato)
la subroutine ListaFile prende per argomenti il nome della cartella in cui ci sono i file da listare (con o senza barra finale), una combobox in cui inserire i nomi dei file e (opzionale) un flag che specifica se visualizzare anche le estensioni dei file (predefinito: no,come nel tuo esempio).codice:Private Sub Form_Click() Call ListaFile("C:", Combo1) End Sub Public Sub ListaFile(Cartella As String, Combo As ComboBox, Optional IncludiEstensione As Boolean) Dim NomeFile As String 'Controlla che cartella finisca per "\" If Right(Cartella, 1) <> "\" Then Cartella = Cartella & "\" NomeFile = Dir(Cartella) Do Until NomeFile = "" If IncludiEstensione Then 'Aggiunge il nome del file completo Combo.AddItem NomeFile Else 'Aggiunge il nome del file senza estensione NomeFile = Left(NomeFile, InStrRev(NomeFile, ".") - 1) Combo.AddItem NomeFile End If NomeFile = Dir Loop End Sub
![]()