Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

verknüpfte Bilder ohne Dateipfad

Begonnen von MaxP, Mai 15, 2018, 15:32:31

⏪ vorheriges - nächstes ⏩

MaxP

Hallo zusammen,

ich habe vor einiger Zeit hier die unten angehängte Datei von Andreas Vogt heruntergeladen und unter A03 installiert.

Hiermit können Bilddateien aus dem Explorer gewählt und dessen Dateiname inkl. Pfad in einer Tabelle gespeichert werden. Die Bilder werden in einem Bildfeld angezeigt. So weit so gut.

Da ich die Ablage der Bilder bzw. Fotos flexibel halten möchte, würde ich gerne nur die Dateinamen der Fotos (z.B. P1234567.jpg) in der Tabelle speichern, also ohne Dateipfad (oder in einem separaten Feld). Den kompletten Pfad (bestehend aus Ablageort\Projektordner\Unterordner\Dateiname) würde ich mir dann wieder zusammenbauen, um mir die Bilder anschauen zu können. So kann ich die Funktion auf 2 verschiedenen Rechnern mit unterschiedlicher Verzeichnisstruktur nutzen, in dem ich nur den Ablageort ändere.

Leider bin ich in VBA nicht so fit. Wie muss ich den Code ändern, um nur den Dateinamen aus dem WinExplorer zu lesen bzw. den Pfad zu splitten?

Vielen Dank vorab.

Gruß
Max
Win 10 pro 64 bit, Access 2003

DF6GL

Hallo,

Du meinst mit "WinExplorer" den "Filedialog"?


Der String, den die Funktion "DateiDialog()"  liefert, enthält den gesamten Pfad-Dateinamen der ausgewählten Datei.


z. B.:  C:\Verzeichnis1\Verzeichnis2\Dateiname.jpg

mit z. B.

Dim a

a=Split(DateiDialog(.......),"\")

erhältst Du ein Array, das jedes (Teil-)Verzeichnis und den Dateinamen in je einem Array-Element beinhaltet.


Mit z. B.:

Dim strPfad as String, strFN as String, lngRightSlash as Long, strPfadDateiName as String
strPfadDateiName = Dateidialog(.....)
lngRightSlash= InstrRev(strPfadDateiName,"\")
strPfad= Left(strPfadDateiName,lngRightSlash)
strFn = Mid(strPfadDateiName,lngRightSlash+1)





steht in "strPfad" der Pfad zur Datei und in strFN der eigentliche Dateiname drin.

MaxP

Hallo Franz,

ist also doch recht kompliziert (für mich jedenfalls).
Wie gesagt, ich bin ein absoluter VBA-Anfänger!

Mit deinen Infos komme ich so leider nicht klar. Ich weiß gar nicht, wo (Module oder Prozeduren) ich welche Codezeile wie anpassen muss. :-\

Gruß
Max
Win 10 pro 64 bit, Access 2003

Joss

Hallo Max,

vielleicht kommst du damit eher zurecht?
VBA Tipp: Dateipfad zerlegen

Gruß
Josef

MaxP

Vielen Dank euch beiden!

Habe mir eine Lösung gebastelt, mit der ich klar komme.

Gruß
Max
Win 10 pro 64 bit, Access 2003