Avatar billede denero Juniormester
07. maj 2015 - 11:08 Der er 2 kommentarer og
1 løsning

Userform med listboxe

Flg. kode bruges i intialize til at fylde listbox2 med de mapper, som er i "Min fil".
Det jeg har forestillet mig er, at ved at trykke på et af undermappenavnene i listbox2, skal dokumentfilerne i pågældende valgte mappe listes op i listbox1




Private Sub UserForm_Initialize()
Dim objFSO As Object
Dim ObjFolder As Object
Dim objSubFolder As Object

'Create an instance of the FileSystemObject
Set objFSO = CreateObject("Scripting.FileSystemObject")
'Get the folder object
Set ObjFolder = objFSO.GetFolder("C:\Min fil")
'loops through each file in the directory and prints their names and path
For Each objSubFolder In ObjFolder.subfolders
 
Me.ListBox1.AddItem objSubFolder.Name

Next objSubFolder

End Sub

Flg. kode kan evt bruges til at "liste" dokumentfilerne i valgte mappe op i listbox1:

Private Sub CommandButton2_Click()
Dim objFSO As Object
Dim objFolder As Object
Dim objFile As Object

'Create an instance of the FileSystemObject
Set objFSO = CreateObject("Scripting.FileSystemObject")
'Get the folder object
Set objFolder = objFSO.GetFolder("C:\Min fil + valgt mappe fra listbox2")
'loops through each file in the directory and prints their names and path
For Each objFile In objFolder.Files

Me.ListBox1.AddItem objFile.Path
Next objFile
End Sub
Avatar billede supertekst Ekspert
08. maj 2015 - 15:55 #1
Private Sub UserForm_Initialize()
Dim objFSO As Object
Dim objFolder As Object
Dim objSubFolder As Object

'Create an instance of the FileSystemObject
    Set objFSO = CreateObject("Scripting.FileSystemObject")
'Get the folder object
    Set objFolder = objFSO.GetFolder("C:\Min fil")
'loops through each file in the directory and prints their names and path
    For Each objSubFolder In objFolder.subfolders
        Me.ListBox1.AddItem objSubFolder.Name
    Next objSubFolder
End Sub
Private Sub ListBox1_Click()
Dim mappeNavn As String
    mappeNavn = ListBox1
    visFiler mappeNavn
End Sub
Private Sub visFiler(mappeNavn)      'Indsættes  Listbox2
Dim objFSO As Object
Dim objFolder As Object
Dim objFile As Object

'Create an instance of the FileSystemObject
    Set objFSO = CreateObject("Scripting.FileSystemObject")
'Get the folder object
    Set objFolder = objFSO.GetFolder("C:\Min fil\" + mappeNavn)
'loops through each file in the directory and prints their names and path
    For Each objFile In objFolder.Files
        Me.ListBox2.AddItem objFile.Path
    Next objFile
End Sub
Avatar billede denero Juniormester
11. maj 2015 - 08:21 #2
Virker. Tak for det. Har lige ændret "Path" til "Name", da det er navnet på filen, jeg skal bruge.
Avatar billede supertekst Ekspert
11. maj 2015 - 08:54 #3
Selv tak og ok
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester