Ordner Suchen

Stelle Fragen zur Programmierung mit Autohotkey

Moderator: jNizM

Lacky1982
Posts: 6
Joined: 11 Oct 2019, 01:24

Ordner Suchen

11 Oct 2019, 01:35

Hallo, hätte folgendes Problem,

müsste auf Laufwerk P:\ einen Pfad ermitteln wobei ich einen Teil vom Ordnernamen nicht weiß...

Gesuchert Pfad:

P:\2551_Greifenburg\2551-Posteingang

Bekannte Varablen :

2551-Posteingang

Anstatz:
F9::

Loop Files, P:\*2551-Posteingang*, D

MsgBox, 4, , Dateiname = %A_LoopFileFullPath%`n`nWeiter?
IfMsgBox, No
break
}
return
Rohwedder
Posts: 7676
Joined: 04 Jun 2014, 08:33
Location: Germany

Re: Ordner Suchen

11 Oct 2019, 02:26

Hallo,
versuch mal:

Code: Select all

F9::
Loop Files, P:\*2551-Posteingang*, RD
{
	MsgBox, 4, , Dateiname = %A_LoopFileFullPath%`n`nWeiter?
	IfMsgBox, No
		break
}
return
just me
Posts: 9482
Joined: 02 Oct 2013, 08:51
Location: Germany

Re: Ordner Suchen

11 Oct 2019, 03:04

Moin,

ist die Beziehung zum übergeordneten Ordner eindeutig? Liegt der Ordner 2551-Posteingang immer in einem Ordner P:\2551_...?
Lacky1982
Posts: 6
Joined: 11 Oct 2019, 01:24

Re: Ordner Suchen

11 Oct 2019, 03:50

just me wrote:
11 Oct 2019, 03:04
Moin,

ist die Beziehung zum übergeordneten Ordner eindeutig? Liegt der Ordner 2551-Posteingang immer in einem Ordner P:\2551_...?
Genau 2551_ ist immer die Projektsnummer , der text danach ist variabel....
Lacky1982
Posts: 6
Joined: 11 Oct 2019, 01:24

Re: Ordner Suchen

11 Oct 2019, 04:00

Rohwedder wrote:
11 Oct 2019, 02:26
Hallo,
versuch mal:

Code: Select all

F9::
Loop Files, P:\*2551-Posteingang*, RD
{
	MsgBox, 4, , Dateiname = %A_LoopFileFullPath%`n`nWeiter?
	IfMsgBox, No
		break
}
return
Danke Funktioniert aber dauert sehr lange,
kann man den Pfad so setzen?
Loop Files, P:\2551*2551-Posteingang*, RD
hd0202
Posts: 183
Joined: 04 Oct 2013, 03:07
Location: Germany near Cologne

Re: Ordner Suchen

12 Oct 2019, 11:23

die lange Zeit entsteht durch die Rekursion "RD", dadurch wird das Laufwerk "P" vollständig durchsucht (alle Ordner und Unterordner und ... und ...)

genügt es nicht, nach der Projektnummer zu suchen ?

Code: Select all

F9::
Loop Files, P:\2551-*, D
{
	MsgBox, 4, , Dateiname = %A_LoopFileFullPath%`n`nWeiter?
	IfMsgBox, No
		break
}
return
evtl. jetzt im gefundenen Ordner noch checken, ob es einen Ordner -Posteingang gibt.

Hubert
just me
Posts: 9482
Joined: 02 Oct 2013, 08:51
Location: Germany

Re: Ordner Suchen

13 Oct 2019, 06:13

Moin,

die Verwendung von Wildcards innerhalb einer Ordnerstruktur ist meiner Erfahrung nach problematisch. Wenn der gesuchte Posteingangsordner immer auf der zweiten Ordnerebene zu finden ist, würde ich Huberts Vorschlag wie folgt ergänzen:

Code: Select all

#NoEnv
ProjektNummer := 2551
F9::
Posteingangsverzeichnis := ""
Loop, Files, P:\%ProjektNummer%_*, D
{
	Loop, Files, %A_LoopFilePath%\%ProjektNummer%-Posteingang, D
	{
		MsgBox, 4, , %A_LoopFilePath%`n`nWeiter suchen?
		IfMsgBox, Yes
			Continue
		Posteingangsverzeichnis := A_LoopFilePath
		Break
	}	
}
If (Posteingangsverzeichnis <> "")
	MsgBox, 0, Gefunden!, %Posteingangsverzeichnis%
Return
*Nicht getested*
Lacky1982
Posts: 6
Joined: 11 Oct 2019, 01:24

Re: Ordner Suchen

14 Oct 2019, 09:12

Vielen Dank Hubert und just me,
das ist die Lösung!
Ihr seit die Besten!!!

Return to “Ich brauche Hilfe”

Who is online

Users browsing this forum: No registered users and 38 guests