Excel VBA Filebrowser Button Abbrechen ansprechen

tobias_2

Cadet 4th Year
Registriert
Nov. 2009
Beiträge
84
Guten Mittag,

ich habe folgende Sub in einem Programm:

Code:
 Sub Demo_GetOpenFilename() 'Filebrowser
 
  Dim varRetVal As Variant

  varRetVal = Application.GetOpenFilename( _
          FileFilter:="Microsoft Excel-Dateien (*.xls; *.xlsx), *.xls; *.xlsx", _
          Title:="EINE Datei zum Öffnen auswählen")

  If varRetVal = False Then Exit Sub
    
  On Error Resume Next
  Workbooks.Open Filename:=varRetVal
  On Error GoTo 0
  
End Sub

Wie kann ich jetzt Bedingungen für den Button "Abbrechen" in dem erscheinenden Menü festlegen?
Also das z.B. eine MsgBox erscheint?!?

Und kann ich bei dem Fenster auch festlegen, was beim Klicken des "x" passieren soll?
 
Mahlzeit,

ich hab das mal über den Rückgabewert gelöst:
Code:
    Dim xlsFile As String
    Dim msgboxerg As String
    Dim wbName As String

    'Sprungmarke
GetXLSFile:
    
    ChDrive "C:\"
    ChDir "C:\BeispielOrdner"
    xlsFile = Application.GetOpenFilename("Excel Files (*.xlsx), *.xlsx", , "Select Survey File", "Select", False)
    
    If TypeName(xlsFile) Like "Boolean" Or xlsFile = "Falsch" Then
        'kein File ausgewaehlt
        msgboxerg = MsgBox("No File selected. Do you want to try again?", vbYesNo, "File Selection")
            ' 7 = no
            ' 6 = yes
            If msgboxerg = "6" Then
                GoTo GetXLSFile
            Else
                Exit Sub
            End If
    ElseIf Right$(xlsFile, Len(xlsFile) - InStrRev(xlsFile, ".")) <> "xlsx" Then
        'keine xlsx datei
        msgboxerg = MsgBox("No xlsx File selected. Do you want to try again?", vbYesNo, "File Selection")
            ' 7 = no
            ' 6 = yes
            If msgboxerg = "6" Then
                GoTo GetXLSFile
            Else
                Exit Sub
            End If
    Else
        wbName = Right$(xlsFile, Len(xlsFile) - InStrRev(xlsFile, "\"))
        [...]
    End If
 

Ähnliche Themen

Zurück
Oben