Zum Inhalt springen

Ordner inhalt in Listbox anzeigen


jim84

Empfohlene Beiträge

Hallo,

ich versuche gerade in einer listbox ein kompletten ordner inhalt anzuzeigen.

sprich das in der Listbox alle datein namen stehen die in ein bestimmten ordner sind.

noch besser wär wenn er nur nach bildern sucht und man diese über ein scrallbalken durchblättern könnte


   Dim sTxt As String, sText As String, sPath As String


   sPath = ActiveWorkbook.Path & "\KFZ\" & ComboBox1 & "\" & ComboBox2 & "\" & ComboBox3 & "\" & ComboBox3 & ".txt"

   If Dir(sPath) = "" Then

      Beep

      MsgBox "Leider keine " & ComboBox3 & " Für " & ComboBox1 & " " & ComboBox2 & " verfügbar"

      Exit Sub

   End If

   Close

   Open sPath For Input As #1

   Do Until EOF(1)

      Line Input #1, sTxt

      sText = sText & sTxt & vbLf

   Loop

   Close

   sText = Left(sText, Len(sText) - 1)

   TextBox1 = sText


Image1.Picture = LoadPicture(ActiveWorkbook.Path & "\KFZ\" & ComboBox1 & "\" & ComboBox2 & "\" & ComboBox3 & "\" & ComboBox3 & ".jpg")

soweit bin ich jetz

jetz sucht er aber nur eine bestimmte datei.. würde aber gern alle im ordner sehen oder mit ein balken durch blättern können

hat da einer eine idee??

danke schon mal

Link zu diesem Kommentar
Auf anderen Seiten teilen

was du mit obigem code machst: du versuchst ein verzeichnis, das via Dir(sPath) zurückgegeben wid, mittels "Open sPath" fälschlicherweise als datei zu öffnen.

du musst stattdessen beim ersten mal Dir(sPath) aufrufen, bekommst die erste datei im verzeichnis, und musst dann mit einem schleifenkonstrukt und fortlaufenden aufrufen von Dir() weitere dateien zurückgeben. diese kannst du dann verarbeiten, wie du willst.

s'Amstel

Link zu diesem Kommentar
Auf anderen Seiten teilen

jop er soll ja alle *.txt datein öffnen und den inhalt in eine listbox schreiben.. gleichzeitig zeig er ein bild

ich hab eine textdatei und eine jpg datei im selben ordner und unter selben namen gespeichert.

so das er halt einmal das bild zeig und dazu in einer box die beschreibung zeig (also die text datei öffnet und in eine box ausgibt)

soll so eine art zubehör-shop für kfz-teile werden.

man soll halt ein bild vom teil haben und die beschreibung dazu.

und über ein scrollbalken halt alle hersteller durch klicken können.

geht bestimmt einfacher mit einer datenbank.. aber das projekt soll halt 100% excel/vba sein.

der code öffnet aber leider nur eine eizige datei im ordner.

hätte irgendwie gern das man alle datein im ordner mit ein balken durch suchen kann

Link zu diesem Kommentar
Auf anderen Seiten teilen

hi jim84,

wenn ich dich richtig verstanden habe sind alle möglichen pfade aus den comboboxen und eben ActiveWorkbook.Path zusammengesetzt.

also kannst du ja in 3 ineinanderverschachtelten for schleifen alle elemente der comboboxen durchgehen:


For i = 0 to anzahlDerElemente

     For j = 0 to anzahlDerElemente

          For k = 0 to anzahlDerElemente

               sPath = ActiveWorkbook.Path & UserForm1.ComboBox1.Column(0, i) _

               & UserForm1.ComboBox2.Column(0, j) _

               & UserForm1.ComboBox3.Column(0, k)


               'Bilder und sonstige Sachen öffnen

          Next

     Next

Next

Hoffe das hilft dir, wobei mich persönlich mal die Lösung von Amstelchen interessieren würde, da ich selber auch gerade mit dem Problem zutun habe, ich meine wie du schon sagst liefert ja Dir() die erste Datei im Verzeichnis zurück, aber nachdem Dir() das getan hat, wie soll man dann weiter verfahren, irgendwie brauch man dann ja die zweite, kann man das Dir() noch mit optionen versehen oder dachtest du da eher an etwas was die reihenfolge der dateien in dem ordner ändert, wenn ja was?

sagmal jim84, baust du dir da ein kleines kaufhaus zusammen? ;)

gestern die textilabteilung, heute ne kfz werkstatt^^

mfg

Bearbeitet von getCppKenntnisse()
Link zu diesem Kommentar
Auf anderen Seiten teilen

Bin grad nicht auf der Arbeit, und kann es deshalb nicht testen, sollte aber gehen.

Zum einfachen durchblätern kannst auf deinem userform zwei button setzen, einen für "vor" und entsprechend einen für "zurück".

Nun kannst du die ereignisse der beiden button nutzen, um deine daten durch zu blättern.

Damit dies auch wirklich funktioniert mußt du zuvor jedoch alle dateien in ein oder zwei array('s) wegschreiben. Das machst du mit einer Schleife.

etwa so


file_name = Dir$(strDrive & "\*.*", vbDirectory)

Do While (Len(file_name) > 0)

    file_name = Dir$()

Loop

Nach dem alle datein in den arrays verstaut sind kannst ja mit den Itemnumbern durchblättern.

in der schleife kann man dann noch zusätzlich die datei auswerten (ist es eine textdatei oder bild datei, oder gehört sie vllt. garnicht zum katalog)

das weitere verfahren kann sich in vielen richtungen gestalten ^^ ... aber das wesentliche solltes du nun ja haben ;)

Link zu diesem Kommentar
Auf anderen Seiten teilen

sagmal jim84, baust du dir da ein kleines kaufhaus zusammen? ;)

gestern die textilabteilung, heute ne kfz werkstatt^^

mfg

nee soll halt eine maske sein die man für alles nutzen kann.

hab das jetz eigentlich so weit fertig.

hab mir halt ein modull genommen und da eine funkion eingebaut

die funktion schaut einfach in ein ordner und speichert zwei "array's " einmal mit alles *.txt datein , einmal alle *.jpg datein

so wenn man jetz irgend was mit sein comboboxen aussucht gibt man so den "pfad" an..

der wird an die funktion gegeben

die gibt dann wieder den inhalt aus

und jetz kann ich mit ein scrollbalken die arrays durchblättern

seh auf einer seite die text datein (infos über das produkt) und auf der anderen seite ein bild (produkt bild)

klingt simpel --- war es aber für mich nich;)

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...