it-swarm.com.de

Standardmäßig ein Ordner für FileDialog in VBA

Private Sub Command93_Click()

    Dim f As Object
    Dim strFile As String
    Dim strFolder As String
    Dim varItem As Variant
    Dim P As String
    Dim DeleteEverything As String

        DoCmd.SetWarnings False
        DeleteEverything = "DELETE * FROM [TABLE]"
        DoCmd.RunSQL DeleteEverything

    Set f = Application.FileDialog(3)
    f.AllowMultiSelect = False
    If f.Show Then
        For Each varItem In f.SelectedItems
            strFile = Dir(varItem)
            strFolder = Left(varItem, Len(varItem) - Len(strFile))
            P = strFolder & strFile
        Next
    End If
    Set f = Nothing

        DoCmd.TransferText acImportFixed, "[IMPORT SPECIFICATION]", "[TABLE]", P, False

End Sub

Wie lege ich den FileDialog beim ersten Öffnen auf einen bestimmten Ordner fest?

17
Chuck

Fügen Sie den Ordnerpfad (einschließlich des nachfolgenden \) Zu InitialFileName hinzu. Um beispielsweise den Dialog im Home-Verzeichnis des Benutzers zu öffnen, gehen Sie wie folgt vor:

f.InitialFileName = Environ("USERPROFILE") & "\"

Wenn Sie das abschließende \ Vergessen, wird das Dialogfeld weiterhin im richtigen Ordner geöffnet, der Ordnername wird jedoch auch als standardmäßig ausgewählter Dateiname angezeigt. Der Dialog sucht dann nach einem gleichnamigen Unterordner, der normalerweise nicht existiert.

45
Chuck