Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
848to852
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
848to852
848to852
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

excel dialog

excel dialog
20.02.2007 22:49:11
Swen
Hallo an alle,
gibt es ein dialog mit dem ich ein folder auswählen kann und dann
nach drücken eines buttons diesen pfad dann in die variable strFolder
übernehme.
gruß
swen

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: excel dialog
20.02.2007 23:05:00
Ramses
Hallo
einen Dialog direkt gibt es in E2000 nicht, erst ab XP.
Alternativ kannst du das hier verwenden.
Das muss im gleichen Modul stehen
Public Type BROWSEINFO '
    hOwner As Long '
    pidlRoot As Long '
    pszDisplayName As String '
    lpszTitle As String '
    ulFlags As Long '
    lpfn As Long '
    lParam As Long '
    iImage As Long '
End Type '
Declare Function SHGetPathFromIDList Lib "shell32.dll" _
    Alias "SHGetPathFromIDListA" (ByVal pidl As Long, ByVal pszPath As String) As Long

Declare Function SHBrowseForFolder Lib "shell32.dll" _
    Alias "SHBrowseForFolderA" (lpBrowseInfo As BROWSEINFO) As Long


Sub Select_Path()
    Dim Msg As String, mypath As String
    Msg = "Wählen Sie ein Verzeichnis aus," & Chr(13) & "dessen Inhalt angezeigt werden soll:"
    mypath = GetDirectory(Msg)
    If Len(mypath) > 0 Then
        MsgBox "Sie haben das Verzeichnis: " & mypath & " ausgewählt"
    Else
        MsgBox "Nichts ausgewählt"
    End If
End Sub


Function GetDirectory(Msg) As String
    Dim myInfo As BROWSEINFO
    Dim mypath As String
    Dim Root As Long, ID As Long, pos As Integer
    With myInfo
        .pidlRoot = 0&
        .lpszTitle = Msg
        .ulFlags = &H1
    End With
    ID = SHBrowseForFolder(myInfo)
    mypath = Space$(512)
    Root = SHGetPathFromIDList(ByVal ID, ByVal mypath)
    If Root Then
        pos = InStr(mypath, Chr$(0))
        GetDirectory = Left(mypath, pos - 1)
    Else
        GetDirectory = ""
    End If
End Function

Gruss Rainer
Anzeige
AW: excel dialog
21.02.2007 21:42:32
Swen
hallo rainer
Habe mich nach mehreren threads unteranderem mit dir für diese entschieden

Sub TabellezuCad()
'am 20.02.2007 überarbeitet
Dim smsg As String, spath As String
Dim iCol As Integer, iRow As Long, strTmp As String
If Worksheet_suchen("cad") = True Then
Worksheets("cad").Select
smsg = "Wo soll die Datei abgelegt werden ?"
spath = ordner(smsg)
If spath <> "" Then strTempFolder = spath
'usw

Sub end
Private Type BROWSEINFO
hOwner As Long
pidlRoot As Long
pszDisplayName As String
lpszTitle As String
ulFlags As Long
lpfn As Long
lParam As Long
iImage As Long
End Type
Declare 

Function SHGetpathfromidlist Lib "shell32.dll" _
Alias "SHGetPathFromIDListA" (ByVal pidl As Long, ByVal pszpath As String) As Long
Declare 

Function SHBrowseForFolder Lib "shell32.dll" _
Alias "SHBrowseForFolderA" (lpBrowseInfo As BROWSEINFO) As Long

Function ordner(Optional smsg) As String
Dim lpBrowseInfo As BROWSEINFO
Dim path As String
Dim r As Long, x As Long, pos As Integer
lpBrowseInfo.pidlRoot = 0&
If IsMissing(smsg) Then
lpBrowseInfo.lpszTitle = "Wählen sie bitte einen Ordner aus."
Else
lpBrowseInfo.lpszTitle = smsg
End If
lpBrowseInfo.ulFlags = &H1
x = SHBrowseForFolder(lpBrowseInfo)
path = Space$(512)
r = SHGetpathfromidlist(ByVal x, ByVal path)
If r Then
pos = InStr(path, Chr$(0))
ordner = Left(path, pos - 1)
Else
ordner = ""
End If
End Function

danke!
gruß
swen
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige