Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: VBA GetDetailsOf einer bestimmten File

VBA GetDetailsOf einer bestimmten File
03.10.2024 08:44:35
Joschi Witchcraft
Schönen guten Morgen.

Ich brauche wieder einmal eine Unterstützung.

Wie kann ich GetDetailsOf für eine ganz bestimmte File auslesen? Ich habe viele Beispiele gefunden, in welchem jedoch jeweils ein Verzeichnis ausgewählt wurde, um dann die einzelnen Files "abzuklappern". Bei einem großen Verzeichnis ist das ein unnötiger Aufwand, wenn mich nur eine bestimmte File interessiert.

Mein - nicht funktionierender - Code:

Option Explicit
Sub GetInfos()
Const MyFile As String = "C:\FotoAlbum\Urlaub2024\Bild44.jpg"
Dim Pfad As String
Dim File As String
Pfad = Left(MyFile, InStrRev(MyFile, "\"))
File = Mid(MyFile, InStrRev(MyFile, "\") + 1)
With CreateObject("Shell.Application").Namespace(Pfad)
Debug.Print .GetDetailsOf(.Items.Item(File), 18)
End With
End Sub

Wer kann helfen?

Gruß Joschi
Anzeige

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA GetDetailsOf einer bestimmten File
03.10.2024 09:19:57
peter
Hallo



Sub GetInfos()
Const MyFile As String = "C:\FotoAlbum\Urlaub2024\Bild44.jpg"
Dim Pfad As String
Dim File As String

Dim objShell As Object
Dim objFolder As Object
Dim objFile As Object

Pfad = Left(MyFile, InStrRev(MyFile, "\") - 1)
File = Mid(MyFile, InStrRev(MyFile, "\") + 1)

Set objShell = CreateObject("Shell.Application")
Set objFolder = objShell.Namespace(CStr(Pfad))

If Not objFolder Is Nothing Then
Set objFile = objFolder.parseName(CStr(File))
Debug.Print objFolder.GetDetailsOf(objFile, 0)
End If
End Sub



Warum man den String in einen String (CStr) umwandeln muss ist mir schleierhaft, funktioniert aber nur so.

Peter
Anzeige
AW: VBA GetDetailsOf einer bestimmten File
03.10.2024 11:01:11
Joschi Witchcraft
Hallo Peter.

Danke für Deine Antwort

Nachdem ich in fast keinem Beispiel "CSTR()" gefunden habe, habe ich das ebenfalls weggelassen. Und es funktioniert trotzdem.

Gruß Joschi
AW: VBA GetDetailsOf einer bestimmten File
03.10.2024 10:39:58
snb
Sub M_snb()

c00 = "G:\OF\"
c01 = Dir("G:\OF\*.png")

With CreateObject("Shell.Application").Namespace(c00)
MsgBox .GetDetailsOf(.Items.Item(c01), 3)
End With
End Sub

Anzeige
AW: VBA GetDetailsOf einer bestimmten File
03.10.2024 11:02:40
Joschi Witchcraft
Hallo snb.

Danke für Deinen Code-Vorschlag. Das ist genau das, was ich gesucht habe.

Problem gelöst.

Gruß Joschi
AW: VBA GetDetailsOf einer bestimmten File
03.10.2024 11:44:23
Joschi Witchcraft
Hallo Peter.

Ich möchte noch folgendes nachtragen:

Nachdem ich für C00 und C01 jeweils eine STRING-Variable eingerichtet hatte. hat der Code nicht mehr funktioniert. Nachdem ich CSTR benutzt hatte, lief der Code wieder.

Der Code funktioniert ohne CSTR auch, wenn die beiden Variablen als VARIANT definiert sind.

Gruß Joschi
Anzeige
AW: VBA GetDetailsOf einer bestimmten File
03.10.2024 13:56:49
Alwin Weisangler
Hallo Joschi,

ja das ist so, denn der 1. Parameter der Funktion muss ein FolderItemObject sein.
Zum Umwandeln in einen String braucht es logischerweise die Typkonvertierungsfunktion CStr.
Schau dazu in die MS Hilfe.

Gruß Uwe
AW: VBA GetDetailsOf einer bestimmten File
03.10.2024 16:09:06
snb
Ohne Deklarationen funktioniert der Code tadellos.
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige