kann mir einer von Euch einen Tipp geben?
ich möchte mit einem Datei Auswahl Dialog, den kompletten Pfad mit Dateiname, in die Tabelle (z.B. A1 Tabelle1) schreiben.
Mit freundlichen Grüßen aus dem Sauerland
Olaf
Sub aaaa()
With Application.FileDialog(msoFileDialogFilePicker)
If .Show = -1 Then
Range("a1") = .SelectedItems(1)
End If
End With
End Sub
Um mit Excel VBA einen Datei-Auswahldialog zu öffnen und den vollständigen Pfad der ausgewählten Datei in eine Zelle zu schreiben, folge diesen Schritten:
Öffne Excel und drücke ALT + F11, um den VBA-Editor zu starten.
Gehe zu Einfügen > Modul, um ein neues Modul zu erstellen.
Füge den folgenden VBA-Code in das Modul ein:
Sub DateiAuswaehlenUndPfadSpeichern()
With Application.FileDialog(msoFileDialogFilePicker)
If .Show = -1 Then
Range("A1").Value = .SelectedItems(1)
End If
End With
End Sub
Schließe den VBA-Editor und gehe zurück zu Excel.
Drücke ALT + F8, wähle DateiAuswaehlenUndPfadSpeichern und klicke auf Ausführen.
Der Pfad der ausgewählten Datei wird nun in die Zelle A1 deiner Tabelle geschrieben.
Fehler: "Laufzeitfehler 424: Objekt erforderlich"
Fehler: Dialog öffnet sich nicht
FileDialog unterstützt (Excel 2007 und höher).Falls du keinen VBA-Code verwenden möchtest, kannst du auch die Funktion HYPERLINK in Excel nutzen, um einfach Dateien zu verlinken, jedoch wird der Pfad hier nicht automatisch in eine Zelle geschrieben.
Ein weiteres Werkzeug ist das DATEIÖFFNEN-Dialogfenster, welches du über Datei > Öffnen erreichen kannst. Dies ist jedoch nicht automatisiert und erfordert manuelle Eingaben.
Hier ist ein einfaches Beispiel für die Verwendung des VBA-Codes:
Beispiel 1: Wenn du eine Datei namens Beispiel.xlsx auswählst, wird der Pfad C:\Benutzer\DeinName\Dokumente\Beispiel.xlsx in Zelle A1 geschrieben.
Beispiel 2: Du kannst den Code auch erweitern, um den Pfad in eine andere Zelle zu schreiben oder mehrere Dateien auszuwählen:
Sub MehrereDateienAuswaehlen()
Dim i As Integer
With Application.FileDialog(msoFileDialogFilePicker)
.AllowMultiSelect = True
If .Show = -1 Then
For i = 1 To .SelectedItems.Count
Cells(i, 1).Value = .SelectedItems(i)
Next i
End If
End With
End Sub
Nutze den vba datei öffnen dialog, um verschiedene Dateitypen in deiner Anwendung zu filtern. Dies kannst du mit der .Filters-Eigenschaft des Dialogfensters tun.
Experimentiere mit dem vba zelle auswählen, um dynamisch zu entscheiden, in welche Zelle der Pfad gespeichert werden soll. Du könntest beispielsweise die aktive Zelle verwenden:
ActiveCell.Value = .SelectedItems(1)
1. Wie kann ich den Pfad in eine andere Zelle schreiben?
Du kannst die Range("A1") im Code durch die gewünschte Zelle ersetzen, z.B. Range("B2").
2. Funktioniert der Code in allen Excel-Versionen?
Der Code ist ab Excel 2007 und höher kompatibel. Ältere Versionen unterstützen nicht das FileDialog-Objekt.