Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

InitialFileName

Forumthread: InitialFileName

InitialFileName
02.09.2013 13:58:39
MPR
Hallo Zusammen,
ich bin neu auf dem Forum und möchte ein sehr nettes Hallo sagen.
Ich habe ein Problem mit der Funktion FileDialog(msoFileDialogFilePicker). Mein code sieht so aus:
Dim dlgSaveAs As FileDialog
Set dlgSaveAs = Application.FileDialog(msoFileDialogFilePicker)
With dlgSaveAs
.AllowMultiSelect = False
.InitialFileName = "\Vorlage_Budgetbersicht_EAD_kurz_20130821.*x*"
.Show
MusterPres = .SelectedItems(1) '& "Vorlage_Budgetbersicht_EAD_kurz_20130821.pptx"
End With
Es funktioniert wie ich erwarte mit kleiner Ausnahme, nämlich. Nur ein Paar letzten zeichen werden dargestellt (siehe Bild: http://img194.imageshack.us/img194/8946/3d8n.jpg).
Wie kann ich einstellen, dass das String komplett dargestellt wird?
Vielen Dank im Voraus

Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: InitialFileName
03.09.2013 14:07:13
fcs
Hallo MPR,
bei mir (Windows XP, Office 1010) funktioniert die Anzeige ohne Probleme.
Allerding kannst du das Zeichen "\" am Anfang von ".intilaFilename = "\..." weglassen oder du gibst den kompletten Pfad der Vorlage-Datei mit an.
Außerdem ist es ratsam das Abbrechen des Dialogs zu prüfen.
Gruß
Franz
Sub aatest()
Dim dlgSaveAs As FileDialog, MusterPres
Set dlgSaveAs = Application.FileDialog(msoFileDialogFilePicker)
With dlgSaveAs
.AllowMultiSelect = False
.InitialFileName = "Vorlage_Budgetbersicht_EAD_kurz_20130821.*x*"
'    .InitialFileName = "D:\Test\Vorlage_Budgetbersicht_EAD_kurz_20130821.*x*"
If .Show = -1 Then
MusterPres = .SelectedItems(1) '& "Vorlage_Budgetbersicht_EAD_kurz_20130821.pptx"
MsgBox "Gewählter Dateiname: " & MusterPres 'Testzeile
Else
MsgBox "Makro wird beendet, da keine Datei gewählt wurde" 'Testzeile
End If
End With
End Sub

Anzeige
AW: InitialFileName
06.09.2013 14:23:06
MPR
Hallo Franz,
danke für die Hilfe.
Grüße,
Mat
;
Anzeige

Infobox / Tutorial

InitialFileName in VBA: So funktioniert's


Schritt-für-Schritt-Anleitung

Um die .InitialFileName-Eigenschaft in VBA mit dem FileDialog zu nutzen, befolge die folgenden Schritte:

  1. Öffne den VBA-Editor: Drücke ALT + F11 in Excel.

  2. Erstelle ein neues Modul: Klicke auf Einfügen > Modul.

  3. Füge den folgenden Code ein:

    Sub DateiAuswählen()
       Dim dlgSaveAs As FileDialog
       Dim MusterPres As String
       Set dlgSaveAs = Application.FileDialog(msoFileDialogFilePicker)
       With dlgSaveAs
           .AllowMultiSelect = False
           .InitialFileName = "C:\DeinPfad\Vorlage_Budgetbersicht_EAD_kurz_20130821.*x*"
           If .Show = -1 Then
               MusterPres = .SelectedItems(1)
               MsgBox "Gewählter Dateiname: " & MusterPres
           Else
               MsgBox "Kein Dateiname ausgewählt"
           End If
       End With
    End Sub
  4. Passe den Pfad an: Stelle sicher, dass der Pfad zur Datei korrekt ist.

  5. Führe das Makro aus: Drücke F5, um das Makro zu starten.


Häufige Fehler und Lösungen

  • Fehler: Nur ein Teil des Dateinamens wird angezeigt
    Lösung: Vergewissere dich, dass du das Zeichen \ vor dem Dateinamen weglässt oder den vollständigen Pfad zur Datei angibst.

  • Fehler: Der Dialog öffnet sich nicht oder schließt sofort
    Lösung: Überprüfe, ob die FileDialog-Eigenschaft korrekt gesetzt ist und der Code nicht in einer anderen Prozedur steckt, die den Dialog beeinflusst.


Alternative Methoden

Falls du eine andere Methode zur Dateiauswahl in VBA testen möchtest, kannst du die Application.GetOpenFilename-Methode verwenden:

Sub DateiAuswählenAlternative()
    Dim MusterPres As Variant
    MusterPres = Application.GetOpenFilename("Excel Dateien (*.xls; *.xlsx), *.xls; *.xlsx", , "Wähle eine Datei")
    If MusterPres <> False Then
        MsgBox "Gewählter Dateiname: " & MusterPres
    Else
        MsgBox "Kein Dateiname ausgewählt"
    End If
End Sub

Praktische Beispiele

  • Beispiel 1: Verwende die .InitialFileName-Eigenschaft für eine spezifische Vorlage.

    .InitialFileName = "C:\Vorlagen\Vorlage_Budget.xlsx"
  • Beispiel 2: Prüfe, ob der Benutzer eine Datei ausgewählt hat und reagiere entsprechend.

    If .Show = -1 Then
      ' Datei wurde ausgewählt
    Else
      ' Abgebrochen
    End If

Tipps für Profis

  • Verwende Option Explicit: Dies hilft dir, Variablen zu deklarieren und Fehler zu vermeiden.

  • Teste den Code: Führe den Code in verschiedenen Excel-Versionen aus, um sicherzustellen, dass er überall funktioniert.

  • Fehlerbehandlung einfügen: Nutze On Error Resume Next, um mögliche Laufzeitfehler abzufangen und zu behandeln.


FAQ: Häufige Fragen

1. Was ist die .InitialFileName-Eigenschaft?
Die .InitialFileName-Eigenschaft legt den Standard-Dateinamen und -Pfad fest, der im FileDialog angezeigt wird.

2. Wie kann ich mehrere Dateien auswählen?
Setze die .AllowMultiSelect-Eigenschaft auf True, um die Auswahl mehrerer Dateien zu ermöglichen.

3. Funktioniert das auch in älteren Excel-Versionen?
Ja, die FileDialog-Methode ist in den meisten modernen Excel-Versionen, einschließlich Excel 2010 und höher, verfügbar. Prüfe jedoch die spezifische Unterstützung für deine Version.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige