| 
		
	
	
	
		
	Registriert seit: 15.04.2018
	
Version(en): 2013
 
	
		
		
		14.09.2025, 12:00 
(Dieser Beitrag wurde zuletzt bearbeitet: 14.09.2025, 12:04 von slowboarder.)
		
	 
		 (14.09.2025, 11:19)RPP63 schrieb:  Hast Du etwas Einfacheres (ich meine natürlich Geschickteres)?
 Gruß Ralf
 Wenn Excel 365 verwendet werden wird, sollte man auch die Funktion TEXTNACH in VBA verwenden können. Da wäre die Formel dann einfacher: WorksheetFunction.TextAfter(fullname, "\", -1) Hab jetzt aber nicht geprüft, ob die Funktion auch unter diesem Namen im WF-Katalog steht 
 Hi Wenn man für GetOprnFilename den Startpfad vorgeben will, dann funktioniert das so, sofern das Laufwerk einem Buchstaben zugeordnet ist: ChDrive "D" ChDir "D:\D-Dokumente\sonstiges\Testordner" FullName =Application.GetOpenFilename(...) Gruß Daniel
	 
	
	
	
		
	Registriert seit: 12.10.2014
	
Version(en): 365 Insider (64 Bit)
 
	
		
		
		14.09.2025, 12:41 
(Dieser Beitrag wurde zuletzt bearbeitet: 14.09.2025, 12:41 von RPP63.)
		
	 
		TEXTAFTER funktioniert nicht per WSF.   Es ginge mit Evaluate():Evaluate("TEXTAFTER(""" & ThisWorkbook.FullName & """, ""\"", -1)") da finde ich Dir(ThisWorkbook.FullName)  etwas griffiger. Disclaimer: ThisWorkbook.FullName dient hier nur als Platzhalter …
	
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
 
	
	
	
		
	Registriert seit: 22.09.2024
	
Version(en): 2010, 2021
 
	
		
		
		14.09.2025, 14:46 
(Dieser Beitrag wurde zuletzt bearbeitet: 14.09.2025, 14:46 von knobbi38.)
		
	 
		Hallo, jetzt wird es langsam aber etwas kurios, Dir() und Evaluate() für das Ermitteln eines Dateinamens aus einem absoluten Dateiangabe und ein "Exit Sub" fehlt da auch nicht.    Ein schönes Beispiel findet man z.B. hier:https://vbaplanet.com/filedialogs.php Den Dateinamen kann man dann einfach mit VBA Mitteln so ermitteln: Code: mid$(strFullFilename, InStrRev(strFullFilename, "\")+1)
Dir() seht zwar elegant aus, ist es aber nicht und sollte eigentlich, weil es nicht reentrant fähig ist, gar nicht erst verwendet werden. Mal abgesehen davon unterstützt Dir() m.W. keine Unicode-Zeichen in Dateinamen.  Je nach Anforderung könnte man Ersatzweise auch das FSO dafür verwenden.  Knobbi38
	 
	
	
	
		
	Registriert seit: 29.09.2015
	
Version(en): 2030,5
 
	
		
		
		14.09.2025, 14:59 
(Dieser Beitrag wurde zuletzt bearbeitet: 14.09.2025, 15:00 von snb.)
		
	 
		Code: Sub M_snb()With Application.FileDialog(3)
 .InitialFileName = "D:\snb_\OF\*.*"
 If .Show Then MsgBox CreateObject("scripting.filesystemobject").getfile(.SelectedItems(1)).Name
 End With
 End Sub
oder Code: Sub M_snb()With Application.FileDialog(3)
 .InitialFileName = "D:\snb_\OF\*.*"
 If .Show Then MsgBox Dir(.SelectedItems(1))
 End With
 End Sub
 
	![[-]](https://www.clever-excel-forum.de/images/collapse.png) Folgende(r) 3 Nutzer sagen Danke an snb für diesen Beitrag:3 Nutzer sagen Danke an snb für diesen Beitrag 28
	  • PIVPQ, Crazy Tom, RPP63 
	
	
	
		
	Registriert seit: 12.04.2014
	
Version(en): Office 365
 
	
	
		moin, ich sehe schon es gibt mehrere Wege mein Ziel zu erreichen schade, dass ich nicht einen davon kannte    mfg Tom     
	
	
	
		
	Registriert seit: 12.07.2025
	
Version(en): 2021
 
	
	
		 (14.09.2025, 18:17)Crazy Tom schrieb:  schade, dass ich nicht einen davon kannte   Mach Dir mal keinen Kopf, Du bist halt an dem Punkt wo wir vor Jahrzehnten waren. Mut zur Lücke, Versuch macht kluch, mit der Zeit wird das. In ein paar Jahren bist Du an dem Punkt wo sich der Käse anfängt zu wiederholen. Andreas.
	 
	
	
	
		
	Registriert seit: 29.09.2015
	
Version(en): 2030,5
 
	
		
		
		15.09.2025, 10:07 
(Dieser Beitrag wurde zuletzt bearbeitet: 15.09.2025, 10:09 von snb.)
		
	 
		Oder als Nachbrenner Code: Sub M_snb()With Application.FileDialog(3)
 .InitialFileName = "D:\snb_\OF\"
 If .Show Then MsgBox Replace(.SelectedItems(1), .InitialFileName, "")
 End With
 End Sub
 
	
	
	
		
	Registriert seit: 15.04.2018
	
Version(en): 2013
 
	
	
		 (14.09.2025, 18:17)Crazy Tom schrieb:  moin,
 ich sehe schon es gibt mehrere Wege mein Ziel zu erreichen
 schade, dass ich nicht einen davon kannte
  
 mfg Tom
  kein Problem. Es ist die Grundlage des Programmierens, dass man sich aus aus den Werkzeugen die man kennt, selber die Werkzeuge zusammenbastelt, die man braucht aber noch nicht hat. Wenn man keine Spezialfunktionen (TextNach, InstrRev, Dir) für sowas kennt, würde man sich das selber programmieren Code: for i = Len(VollständigerDateiname) to 1 step -1if Mid(VollständigerDateiname, i, 1) = "\" then Exit for
 Dateiname = Mid(VollständigerDateiname, i, 1) & Dateiname
 Next
 
 
	
	
	
		
	Registriert seit: 12.04.2014
	
Version(en): Office 365
 
	
	
		moin,
 mein Problem bestand weniger darin den Dateinamen aus dem kompletten Pfad zu ermitteln
 sondern den festgelegten Ordner zu öffnen
 und durch klick auf die Datei die Information
 zum Dateinamen, oder von mir aus auch den Fullname, zu ermitteln
 aus dem Fullname den Dateinamen zu holen, hätte ich schon hinbekommen
 
 mfg Tom
 |