2016-07-19 14 views
0

Ich habe eine Datei mit einer Liste von PC-Hostnamen Ich möchte in der Lage sein, eine Verbindung zu dem C-Laufwerk eines bestimmten durch Klicken in eine Zelle oder Schaltfläche oder etwas.Excel VBA um UNC aus der Zelle zu bekommen und öffnen Sie es in explorer.exe

Lassen Sie uns sagen, dass ich zur Zeit den Hostnamen in Spalte A habe ich CONCATENATE verwenden Sie es in einen richtigen Netzwerkpfad zu drehen \\ Hostname \ C $ und setzte sich in Spalte B.

Nun, wie kann ich es so machen Ich kann einfach auf die Zelle in Spalte B klicken, um diesen Speicherort in explorer.exe zu öffnen. Ich habe 450 PCs, also muss ich in der Lage sein, den Bereich anzugeben, füttern Sie den Netzwerkpfad in VBA und öffnen Sie dann das in explorer.exe macht dies Sinn? : P

Würde wirklich, wirklich jede Hilfe zu schätzen wissen. Vielen Dank.

Antwort

1

Wickeln Sie den verketteten Wert in einem "Hyperlink()". Ab dann ist es anklickbar und es öffnet sich der Explorer.

Oder Sie legen diesen Code in Ihrem Arbeitsblatt Code-Bereich und doppelklicken Sie auf die Zellen, wo Ihre Links stehen. Aber Sie dürfen es nicht in Kombination mit HYPERLINK verwenden.

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) 
If Target.Column <> 2 Then Exit Sub 
Dim sh As Object 
Set sh = CreateObject("Wscript.Shell") 
sh.Run ("explorer " & Target.Value) 
Cancel = True 
End Sub 
+0

danke, ich tat dies und es sagt nur "kann die angegebene Datei nicht öffnen". Ich weiß, dass der Link in Ordnung ist, weil ich es in Start> Ausführen einfügen kann und es wird gut verbinden. Irgendeine Idee warum das sein könnte? – Alex

+0

Wie sieht also Ihr Link aus, ohne die Eigenschaft friendlyName? –

+0

OK Ich habe herausgefunden, dass es nicht funktionierte, da ich normalerweise ein Administratorpasswort eingeben muss, wenn ich mich mit einem Netzwerk-PC verbinde (für die aktuelle Windows-Sitzung, nehme ich an). Sobald ich über Start> Ausführen eine Verbindung hergestellt habe und den Benutzernamen/das Passwort eingegeben habe, kann ich mich mit der Excel-Datei verbinden, aber nicht bevor ich das tue. Gibt es eine Möglichkeit, dies zu umgehen oder gibt es einfach keine Möglichkeit, das zu tun, was ich will? Ich habe versucht, Excel als Admin ausgeführt, aber nicht funktioniert (ich muss tatsächlich als ein anderer Benutzer ausführen und geben Sie meine Domäne Admin-Passwort) – Alex

Verwandte Themen