Einfach mal folgender Codeschnipsel:
Sub test()
Dim daTei
daTei = Application.GetOpenFilename(, , , , True)
Debug.Print (IsArray(daTei))
End Sub
Der funktioniert so weit einwandfrei und gibt True aus, sobald ich etwas auswähle.
Nur sobald ich eine bestimmte Arbeitsmappe lade (natürlich genau die, in der das rein soll), wird das Multiselect ignoriert. Ich kann zwar mehrere Dateien auswählen, genommen wird aber nur die erste, d.h. IsArray(Datei)=False.
Das Verhalten tritt übrigens auch auf, wenn der Code gar nicht in der betreffenden Arbeitsmappe steht. D.h. ich schreibe den Code in eine neue Mappe und es tut. Lade ich dann oben erwähnte Arbeitsmappe und Multiselect geht nicht mehr. Schließe ich sie dann wieder, dann geht es.
Ganz lustig ist auch, dass ich in einem AddIn einen Code habe, bei dem es trotzdem geht. Kopiere ich obigen Code in das Modul im AddIn, geht es nicht. Ebenso funktioniert der AddIn Code nicht in der o.g. Arbeitsmappe.
Soweit ich jetzt heruasgefunden habe, wird das durch eine bedingte Formatierung ausgelöst, entferne ich die, dann geht es... nur warum in aller Welt? Ich habe es hier auf zwei Rechner ausprobiert und es tritt bei beiden auf. Die Datei kann ich jetzt von hier aus nicht hochladen, das hole ich bei Bedarf heute abend nach.
Danke schon mal und Gruss, Jogy