Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
500to504
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
500to504
500to504
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

DialogFilePicker in Excel 2000

DialogFilePicker in Excel 2000
18.10.2004 22:53:57
Benny
Hallo,
Habe unterstehenden Code in mein Programm, und Functioniert Supper in Excel 10.0
In Excel 9.0 geht es nicht.
Hat jemand ein Vorschlag wass ich machen kann?
mfg Benny

Sub Import()
Dim fd As FileDialog
Dim OpenForms 'Voor het vermijden van witte vlekken tijdens het laden
i = 1
Set fd = Application.FileDialog(msoFileDialogFilePicker)
Dim vrtSelectedItem As Variant
With fd
Set FFs = .Filters
With FFs
.Clear
.Add "GBM-Files", "*.gbm"
End With
If .Show = -1 Then
Range("AF1:AF6").Clear
For Each vrtSelectedItem In .SelectedItems
Cells(i, 32).Value = vrtSelectedItem
i = i + 1
Next vrtSelectedItem
Else: Exit Sub
End If
End With
Set fd = Nothing
Range("AF1:AF6").Select
Selection.Sort Key1:=Range("AF1"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
On Error Resume Next
Call Import_L1
On Error Resume Next
Call Import_L2
On Error Resume Next
Call Import_L3
On Error Resume Next
Call Import_R1
On Error Resume Next
Call Import_R2
On Error Resume Next
Call Import_R3
msg = "Data has been Loaded!"
End Sub

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

Betreff
Datum
Anwender
Anzeige
googeln
Reinhard
Hi Benny,
dann findest du sowas wie das Nachfolgende. Wars hilfreich?
Gruß
Reinhard
Hallo Leute,
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
Beitrag 2 aus der Diskussionsgruppe
Von:Melanie Breden (Melanie.BredenNOSPAM@mvps.org)

View this article only
Newsgroups:microsoft.public.de.excel
Datum:2004-01-02 06:38:21 PST
Hallo B.?
gib bitte deinen Vornamen an :-)
"B. Winkelmayer" schrieb:
> 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:
[Snipp Code]
> 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?
das FileDialog-Objekt steht erst ab Excel XP zur Verfügung.
Verwende folgende Api-Funktion:
Private Declare

Function GetTempPath Lib "kernel32" Alias "GetTempPathA" _
(ByVal nBufferLength As Long, _
ByVal lpBuffer As String) As Long
Diese kannst du in deine Prozeduren oder 

Function integrieren:

Function datei_open() As String
datei_open = Application.GetOpenFilename("(*.xls),*.xls")
' Bei Dialog-Abbruch
If datei_open = "Falsch" Then datei_open = ""
End Function

--
Mit freundlichen Grüssen
Melanie Breden
- Microsoft MVP für Excel -
http://excel.codebooks.de (Das Excel-VBA Codebook)
#Excel-Auftragsprogrammierung#
Anzeige
AW: DialogFilePicker in Excel 2000
Ramses
Hallo
"msoFileDialogFilePicker" gibt es erst ab Office XP.
Da musst du etwas anderes implementieren, vielleicht etwas wie Application.FileSearch.
Das Problem ist nur, dass du auch das MultiSelect Ereignis verwendest, und das gibt es unter O2000 auch noch nicht.
Da bleibt nichts anderes übrig, als einen kompletten Code für E2000 zu programmieren, und diesen nach Prüfung der EXCEL Version zur Ausführung zu bringen.
Gruss Rainer

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige