Anzeige
Archiv - Navigation
1232to1236
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
Inhaltsverzeichnis

GetOpenFileName Anzahl Filter

GetOpenFileName Anzahl Filter
Heiko
Hi, zusammen,
ganz kurze Frage zur GetOpenFileName Methode:
Kann es sein, dass die Anzahl der moeglichen Filter auf 7 bzw die Anzahl der Zeichen fuer den Filterstring begrenzt ist? Sobald ich einen achten Flter hinzufuege, bekomme ich einen Laufzeitfehler 2015 "Typen unvertaeglich" fuer die Variable fileName, also fileName = Application.GetOpenFileName. Filename ist als variant deklariert, sollte also recht viele Zeichen aufnehmen koennen...
Oder ist da ein Denkfehler?
Wuerde mich ueber einen Tip freuen,
Heiko

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

Betreff
Benutzer
Anzeige
GetOpenFileName Ergaenzung
14.10.2011 00:03:45
Heiko
... Sorry, hab mich etwas verbabbelt: fileName ist natuerlich variant, der Filterstring (strFilter) ist natuerlich als string deklariert und sollte schon ziemlich langen Text speichern koennen, richtig?...
AW: GetOpenFileName Ergaenzung
14.10.2011 00:46:35
Nepumuk
Hallo,
wie meinst du das? Ich kann da keine Begrenzung finden.

Public Sub test()
    Dim vntReturn As Variant
    vntReturn = Application.GetOpenFilename(FileFilter:="BMP-Format (*.bmp), " & _
        "*.bmp, JPG-Format (*.jpg;*.jpeg), *.jpg;*.jpeg, GIF-Format (*.gif), *.gif, " & _
        "TIF-Format (*.tif), *.tif, PNG-Format (*.png), *.png, ICO-Format (*.ico), *.ico")
End Sub

Gruß
Nepumuk
Anzeige
AW: GetOpenFileName Ergaenzung
14.10.2011 00:57:15
Heiko
Hallo, Nepumuk,
war etwas missverstaendlich ausgedrueckt...
vntReturn ist laut VBA Hilfe ein ApplicationObjekt... ich habs allerdings auch als Variant deklariert.
die Variable strFilter, also ... getOpenFileName(strFilter,...) ist offenbar vom Typ Variant (Zitat: "FileFilter: Optionaler Variant-Wert. Eine Zeichenfolge, die die Dateifilterkriterien angibt.").
Ich hab die Filter vorher als strFilter = "BMP-Format (*.bmp), " ... usw festgelegt...
Hab mal rumprobiert und festgestellt, dass bei 255 Zeichen Schluss ist, und das sollte eigentlich bei Variant nicht der Fall sein...
Gruss, Heiko
Anzeige
AW: GetOpenFileName Ergaenzung
14.10.2011 01:42:36
Nepumuk
Hallo,
jetzt hab ich das nachvollziehen können. Du kannst aber den String um einiges kürzen:
Application.GetOpenFilename("BMP-Format, *.bmp, JPG-Format, *.jpg;*.jpeg, GIF-Format, ...
Das sind 8 Zeichen pro Endung.
Warum der Dialog nicht mehr Zeichen verarbeiten kann weiß ich auch nicht, dazu müsste man den Quellcode des Dialoges haben. Könnte mit dem Datentyp in der Methode zusammenhängen (unsigned char - Array mit 255 Einträgen).
Gruß
Nepumuk
AW: GetOpenFileName Notloesung...
14.10.2011 05:18:32
Heiko
... das war in der Tat der beste aber auch einzige Tip, der weitergeholfen hat: String einfach kuerzen. Scheint aber wirklich am getOpenFileName Dialog zu liegen...
Vielen Dank fuers Reinhaengen,
Heiko
Anzeige

302 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige