AW: Schau Dir bitte den Link in meiner 1. AW an!!! owT
09.07.2021 13:04:27
migre
Hallo!
Die Shell-Anweisung im obigen Link ist die Basis, die musst Du allerdings leicht anpassen, auf Deine konkreten Verhältnisse. Folgende Vorgehensweise:
1. Öffne Dein (Kunden-?) Verzeichnis im Explorer
2. Führe dort einmalig (!) manuell eine Suche nach einem Kundennamer durch (zB "Meier")
3. Nach Ausführung der Suche kopierst Du Dir die "Such-URL" aus der Explorer-Adresszeile
4. Mit Hilfe der "Such-URL" passt Du dann die Shell-Anweisung bzw. den Code an
Hier ein Beispiel als einfaches Makro: Öffnen des Windows-Explorers in einem bestimmten Verzeichnis mit aktiver Suche nach dem Begriff der in A1 des aktiven Blattes steht:
Sub ExplorerInVerzeichnisMitAktiverSucheOeffnen()
Dim Ws As Worksheet, kName$, Pre$, Suf$, pPath$
Set Ws = ActiveSheet 'Bezug auf das aktive Blatt
kName = Ws.Range("A1").Text 'Kundenname (= Suchbegriff für Explorer) steht in A1
'Der Präfix bleibt immer gleich
Pre = "c:\Windows\explorer.exe ""search-ms:displayname=Search%20Results&crumb=System.Generic.String%3A"
'Den Suffix übernimmst Du aus der "Such-URL" einer manuellen Suche im entsprechenden Verzeichnis
'## löschen und dazwischen statt "DeinAdressString" einkopieren
Suf = "&crumb=location:C%3A%5CUsers%5C#DeinAdressString#"
'Zusammensetzen der Teile
pPath = Pre & kName & Suf
'Aufrufen Explorer-Fenster mit aktiver Suche mit o.a. Parametern
Shell pPath, vbNormalFocus
End Sub
Das Ganz könnte man dann, im Sinne Deiner "Hyperlink"-Idee, zB auch so machen: Statt Hyperlinks kann man quasi den Doppelklick auf die Zelle nutzen um o.a. Shell-Anweisung zu öffnen, schematisch:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim Pre$, Suf$, pPath$
Pre = "c:\Windows\explorer.exe ""search-ms:displayname=Search%20Results&crumb=System.Generic.String%3A"
'Hier wieder einmalig aus der manuellen "Such-URL" anpassen
Suf = "&crumb=location:C%3A%5CUsers%5C#DeinAdressString#"
pPath = Pre & Target.Text & Suf
Shell pPath, vbNormalFocus: Cancel = True
End Sub
Kommst Du damit zurecht?
LG Michael