Tipps "n" Tricks
Anwender-Software - Excel

Komfortable Datei-Auswahl per VBA 

Thema:

Excel 2002
Excel 2002 stellt ein neues "FileDialog"-Objekt zur Verfügung, das Sie speziell zur Anzeige von Dateidialogen einsetzen können. Die folgende Beispiel-Routine zeigt die Auswahl eines Dateinamens, unter dem das aktuelle Arbeitsblatt exportiert wird:

Private Sub btnPick_Click()
  Dim fDlg As FileDialog
  Dim strFName As String

  Set fDlg = Application.FileDialog(msoFileDialogSaveAs)
  With fDlg
    .Title = "Tabelle exportieren:"
    .ButtonName = "Exportieren"
    .Show
    If .SelectedItems.Count > 0 Then
      strFName = .SelectedItems(1)
      ActiveSheet.Copy
      With ActiveWorkbook
        .SaveAs strFName
        .Close
      End With
    End If
  End With

End Sub

Zunächst initialisieren Sie eine Objektvariable "fDlg" vom Typ "FileDialog", um den weiteren Zugriff zu ermöglichen. Über die Eigenschaften "Title" und "ButtonName" können Sie dann individuelle Bezeichnungen zuordnen. Der Aufruf der Methode "Show" zeigt den Dialog an. Das Ergebnis ist eine Auflistung "SelectedItems". Über deren Eigenschaft "Count" läßt sich zunächst abfragen, ob etwas ausgewählt oder ob auf Abbrechen (Count=0) geklickt wurde. Das Auslesen des ersten Eintrages der Auflistung liefert dann den eingegebenen Dateinamen inklusive Laufwerk und Verzeichnis, den wir hier zunächst der Variablen "strFName" zuweisen. Anschließend kopieren wir das aktuelle Arbeitsblatt in eine neue Arbeitsmappe, speichern sie unter dem gewählten Dateinamen und schließen die Arbeitsmappe dann wieder.

 

Tipps "n" Tricks
Anwender-Software - Excel