PDA

Vollständige Version anzeigen : Ordner auslesen in einer Listbox Anzeigen und Daten öffnen ?!?!


Mario.E
02.07.2014, 13:44
Hallo zusammen,

ich möchte folgendes mit VBA Excel 2010 machen.;)

Es soll ein Ordner mit festen Pfad mit Unterordner durchsucht werden auf .fwx und .fwd dateien.

Die gefunden Daten sollen dann in einer Listbox Alphabetisch angezeigt werden.

Die .fwx Datei (Programm) die man in der Listbox auswählt, soll mit klick auf die Listbox oder eines Button öffnen können.

Ist das möglich und wenn ja wie ?


Vielen Dank

Gruß

Mario

Hajo_Zi
02.07.2014, 13:49
Hallo Mario,

schreibe es erst in Tabelle, sortiere es dort und dann Listbox.
Teil 1 Ordner auslesen einschl. Unterordner (http://hajo-excel.de/chCounter3/getfile.php?id=21)

<img src="http://Hajo-Excel.de/images/grusz1.gif" align="middle" height="40" alt="Grußformel"><a href="http://Hajo-Excel.de/index.htm"><img border="0" src="http://Hajo-Excel.de/images/logo_hajo3.gif" align="middle" height="40" alt="Homepage"></a>

Mario.E
02.07.2014, 14:28
Danke für deine Vorlagen.

ich möchte das ganze nicht über Hyperlink öffnen da dies nicht funktioniert mit der .fwx datei und von der Ladezeit ist dies auch nicht so perfekt.

ich würde dies dann gerne über eine Shell.Application öffnen.

Dim sh As Object
Dim Datei

Datei = aus der Liste ?!?!?!!?

Set sh = CreateObject("Shell.Application")
sh.Open Datei
End Sub

weiß leider nicht wie ich dies verwirklichen kann.

bin in VBA ein Anfänger :(

Hajo_Zi
02.07.2014, 14:41
ich auch nicht. Von Hyperlink hatte ich nichts geschrieben.

<a href="http://Hajo-Excel.de/index.htm" target="_blank" title="Hajo's Excelseiten">Gruß Hajo</a>

Mario.E
02.07.2014, 14:54
mmmm okay dann habe ich es nicht gecheckt :)

habe es nun aktuell so gelöst:


Option Explicit
Dim Pfad As String

Sub UserForm_Initialize()
Dim AktDat As String

Pfad = ActiveWorkbook.Path & "C:\Users\name\Desktop\Service\"
AktDat = Dir(Pfad & "*.fwx")

If AktDat = "" Then MsgBox "Keine gespeicherte Kalkulation gefunden."
While AktDat <> ""
ListBox1.AddItem AktDat
AktDat = Dir
Wend
End Sub


Sub Listbox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)

Dim sh As Object
Dim Datei

Datei = Pfad & ListBox1.List(ListBox1.ListIndex)

Set sh = CreateObject("Shell.Application")
sh.Open Datei
End Sub



------------
jetzt habe ich da nur das Problem das es nur den Ordner "Service" durchsucht wie kann ich den auch alle Unterordner durchsuchen ?

Mario.E
03.07.2014, 14:18
Also ich kommt da leider immer nocht nicht weiter:
habe da nun einen Code gefunden der allerdings noch angepasst werden muss.

Das öffnen läuft dort über einen rundll32.exe ich möchte aber das es mit einer
Shell.Application öffnet.

Zudem durchsucht der Code leider keine Unterordner wie kann ich dies abändern !

Kenn mich leider wirklich nicht gut damit aus :(

Kann mir jemand Helfen !!


Diesen Code habe ich im internet gefunden !!
Option Explicit

Private strPath As String

Private Sub ListBox1_Change()
Dim strFile As String

If ListBox1.ListIndex >= 0 Then
strFile = strPath & ListBox1.Value & ".pdf"
Shell "rundll32.exe shimgvw.dll,ImageView_Fullscreen" & strFile, vbMaximizedFocus




End If
End Sub


Private Sub UserForm_Initialize()
Dim strFile As String

' das Verzeichnis anpassen!
strPath = "C:\Users\m.eckert\Desktop\1\"
strFile = Dir(strPath & "*.pdf")
With ListBox1
.Clear
Do Until strFile = ""
.AddItem Left(strFile, Len(strFile) - 4)
strFile = Dir
Loop
End With
End Sub