Brauche Hilfe mit dim fd as FileDialog
02.01.2004 12:27:32
B. Winkelmayer
habe ein Projekt mit Makros unter Excel 2003 erstellt (funktioniert auch perfekt), wo per Mausklick auf eine Schaltfläche ein "Datei Öffnen"-Dialog angezeigt wird. Nun funktioniert aber das Makro unter Excel 2000 plötzlich nicht mehr ("Kompilierungsfehler").
Ich habe in meinem Projekt folgendes Makro in Verwendung:
-------------------------------------------------------------------
' Funktion: Rückgabe eines Dateinamens per "Datei öffnen"-Dialogfeld.
Function datei_open()
' Variable als FileDialog - Objekt definieren:
Dim vrtSelectedItem As Variant
Dim fd As FileDialog
' FileDialog-Objekt als File Picker Dialogbox definieren:
Set fd = Application.FileDialog(msoFileDialogFilePicker)
' Verwendung eines Width ... End Width Blocks zum Referenzieren des FileDialog-Objekts:
With fd
' Festlegen einiger Eigenschaften wie Sperre auf einen Dateityp, Sperre von Mehrfachauswahl:
.Filters.Add "Excel", "*.xls", 1
.AllowMultiSelect = False
' Show-Methode um den FilePicker-Dialog anzuzeigen. Wenn der User Action gedrückt hat, Rückgabe des Wertes:
If .Show = -1 Then
' Durchlauf aller FileDialogSelectedItems:
For Each vrtSelectedItem In .SelectedItems
' vrtSelectedItem gibt den Dateinamen zurück. Speichern in einer Variable:
datei_open = vrtSelectedItem
Next vrtSelectedItem
' Wenn der User "Cancel" anklickt:
Else
End If
End With
' Variable zurücksetzen
Set fd = Nothing
End Function
----------------------------------------------------------------------
Der Fehler tritt in der Zeile "dim fd as FileDialog" auf, und zwar "Benutzerdefinierter Typ nicht erlaubt".
Gibt's Abhilfe, wie ich das ganze auch unter Excel 2000 zum Laufen bringe?
MFG,
BW