Datei auswählen und öffnen
28.01.2004 21:02:35
Maren
ich bin außerordentlich begeistert was du so hinbekommst. Die Routine funktioniert. Ich bekomme nun alle Dateien in dem bestimmten Ordner C:\Zander angezweigt. Leider öffnen die Dateien aber nicht wenn ich dann eine auswähle und öffnen anklicke. Geht das damit auch???
Liebe Grüße Maren
Option Explicit
Private Type OSVERSIONINFO
dwOSVersionInfoSize As Long
dwMajorVersion As Long
dwMinorVersion As Long
dwBuildNumber As Long
dwPlatformId As Long
szCSDVersion As String * 128
End Type
Private Declare Function GetVersionEx Lib "kernel32" Alias "GetVersionExA" (ByRef lpVersionInformation As OSVERSIONINFO) As Long
Private Declare Function GetFileNameFromBrowseW Lib "shell32" Alias "#63" (ByVal hwndOwner As Long, ByVal lpstrFile As Long, ByVal nMaxFile As Long, ByVal lpstrInitialDir As Long, ByVal lpstrDefExt As Long, ByVal lpstrFilter As Long, ByVal lpstrTitle As Long) As Long
Private Declare Function GetFileNameFromBrowseA Lib "shell32" Alias "#63" (ByVal hwndOwner As Long, ByVal lpstrFile As String, ByVal nMaxFile As Long, ByVal lpstrInitialDir As String, ByVal lpstrDefExt As String, ByVal lpstrFilter As String, ByVal lpstrTitle As String) As Long
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Public Sub start()
Dim sSave As String
sSave = Space(255)
If IsWinNT Then
GetFileNameFromBrowseW FindWindow("xlmain", vbNullString), StrPtr(sSave), 255, StrPtr("C:\Zander"), StrPtr("xls"), StrPtr("Excel files (*.xls)" + Chr$(0) + "*.xls" + Chr$(0) + "All files (*.*)" + Chr$(0) + "*.*" + Chr$(0)), StrPtr("Öffnen")
Else
GetFileNameFromBrowseA FindWindow("xlmain", vbNullString), sSave, 255, "C:\Zander", "xls", "Excel files (*.xls)" + Chr$(0) + "*.xls" + Chr$(0) + "All files (*.*)" + Chr$(0) + "*.*" + Chr$(0), "Öffnen"
End If
sSave = Trim(sSave)
sSave = Mid(sSave, 1, Len(sSave) - 1)
MsgBox sSave
End Sub
Private Function IsWinNT() As Boolean
Dim myOS As OSVERSIONINFO
myOS.dwOSVersionInfoSize = Len(myOS)
GetVersionEx myOS
IsWinNT = (myOS.dwPlatformId = 2)
End Function