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

Forumthread: FileDialog mit "Computer" starten

FileDialog mit "Computer" starten
12.04.2017 11:38:26
Peter
Hallo zusammen
Ich möchte mit folgender Funktion einen Pfad auslesen - Startposition soll immer "Computer" oder "Desktop" sein - leider funktioniert dies aber nicht mit diesen beiden Namen - kann mir einer helfen - vielen Dank
Sub X_GetFolder()
MsgBox fu_GetFolder("Computer") 'geht nicht!!!
End Sub
Function fu_GetFolder(Optional ByVal sPfa = "")
Dim Dlg As FileDialog
sPfa = sPfa & IIf(Right(sPfa, 1) = "\", "", "\") 'nur zur Sicherheit, ob \ vorhanden ist
Set Dlg = Application.FileDialog(msoFileDialogFolderPicker)
With Dlg
.InitialFileName = sPfa
If .Show = True Then fu_GetFolder = .SelectedItems(1)
End With
End Function

mfg Pepi
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: FileDialog mit "Computer" starten
12.04.2017 11:49:46
Daniel
Hi
den Desktop bekommst du so:
.InitialFileName = Environ("Userprofile") & "\Desktop"
"Computer" weiß ich leider auch nicht.
Gruß Daniel
AW: FileDialog mit "Computer" starten
12.04.2017 13:12:24
Matthias
Habe nochmal weiter gelesen. Also mit dem Beitrag eben (bei dem Link) kannst du dir nur Ordner anzeigen lassen. Direkt aus MyComputer eine Datei auswählen geht wohl nach dem was ich bisher gelesen habe nicht, da es kein Ordner im eigentlichen Sinne ist, den man ansprechen kann. VG
Computer kann nicht funktionieren...
12.04.2017 14:19:32
EtoPHG
Peter,
denn Filedialog braucht als minimalen Einstiegspunkt einen DriveLetter (e.g. "C:\", "P:\" etc.)
Nur auf 'Drives' können Verzeichnisse und Dateien liegen!
Desktop ist ein phyisches Verzeichnis, dass auf dem Homedrive liegt. Dazu hat dir Daniel den Einstiegspunkt gezeigt.
Gruess Hansueli
Anzeige
Wenn es dir nur um die...
13.04.2017 07:01:59
Case
Hallo Pepi, :-)
... Auswahl eines Ordners geht und Du den Startpunkt auf "Computer" setzen möchtest, dann probiere es mal so: ;-)
Option Explicit
Public Sub Main()
Dim objShell As Object
Dim varDir As Variant
Dim strTMP As String
Set objShell = CreateObject("Shell.Application")
Set varDir = objShell.BrowseForFolder(0, "Ordner", &H1 + &H10, 17) ' Desktop = 25
On Error Resume Next
strTMP = varDir.Self.Path
On Error GoTo Fin
If strTMP  "" And Left(strTMP, 2)  "::" Then
If Right(strTMP, 1)  "\" Then strTMP = strTMP & "\"
MsgBox strTMP
End If
Fin:
Set objShell = Nothing
Set varDir = Nothing
If Err.Number  0 Then MsgBox "Error: " & _
Err.Number & " " & Err.Description
End Sub
Shell.BrowseForFolder method...
BROWSEINFO structure...
ShellSpecialFolderConstants enumeration...
Die Parameter sind in den Links erklärt. ;-)
Servus
Case

Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige