Access-o-Mania

Access-Forum => Formular => Thema gestartet von: MaxP am Mai 15, 2018, 15:32:31

Titel: verknüpfte Bilder ohne Dateipfad
Beitrag von: MaxP am Mai 15, 2018, 15:32:31
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
Titel: Re: verknüpfte Bilder ohne Dateipfad
Beitrag von: DF6GL am Mai 15, 2018, 20:33:16
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.
Titel: Re: verknüpfte Bilder ohne Dateipfad
Beitrag von: MaxP am Mai 16, 2018, 12:30:12
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
Titel: Re: verknüpfte Bilder ohne Dateipfad
Beitrag von: Joss am Mai 16, 2018, 12:51:45
Hallo Max,

vielleicht kommst du damit eher zurecht?
VBA Tipp: Dateipfad zerlegen (http://dbwiki.net/wiki/VBA_Tipp:_Dateipfad_zerlegen)

Gruß
Josef
Titel: Re: verknüpfte Bilder ohne Dateipfad
Beitrag von: MaxP am Mai 22, 2018, 18:23:23
Vielen Dank euch beiden!

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

Gruß
Max