ich suche einen Makro, der prüfen soll, ob eine Verbindung zu einem Netzlaufwerk z: besteht. Wenn keine Verbindung besteht soll die Verbindung mit 192.168.178.31\share als Laufwerk z: hergestellt werden.
Mfg Meinolf
Sub Ordner_vorhanden()
' von Berti Koern
Dim Fso, Ordnername
Set Fso = CreateObject("Scripting.FileSystemObject")
Ordnername = "C:\Eigene Dateien\"
' MsgBox Fso.FolderExists(Ordnername)
If Fso.FolderExists(Ordnername) = False Then MkDir "C:\Eigene Dateien\"
End Sub
Sub netzwerk()
Dim lstrPfad As String, lShell
'so anpassen, dass auf jeden Fall eine Datei gefunden wird, wenn z: vorhanden
lstrPfad = Dir("z:\share\*.*")
If lstrPfad = "" Then
lShell = Shell("net share \\192.168.178.31\share z")
End If
End Sub
An lstrPfad wird die erste gefundene Datei aus Z:\share übergeben.
Wenn Z: noch gar nicht vorhanden, wird "" zurückgegeben.
Wenn lstrPfad = "", wird der Shell-Befehl ausgeführt.
Was den Befehl NET betrifft, musst du dich vllt noch mal schlau(er) machen, da ich hier keinen Zugriff auf NET habe, und die Syntax nicht genau kenne.
Der Befehl soll zu dem Netzwerkpfad \ \192.168.178.31\share eine Verbindung mit dem Laufwerksbuchstaben Z herstellen.
Hilft das?
Ciao
Thorsten
Sub netzwerk()
Dim lstrPfad As String, lShell
'so anpassen, dass auf jeden Fall eine Datei gefunden wird, wenn z: vorhanden
lstrPfad = Dir("z:\test.xls")
If lstrPfad = "" Then
'lShell = Shell("net share z: \\192.168.178.31\share")
Shell ("net use z: \\192.168.178.31\share")
End If
End Sub
Sub drive_exists()
Dim fs As Object
Dim testdrive As String
testdrive = "Z:\"
Set fs = CreateObject("Scripting.FileSystemObject")
If fs.DriveExists(testdrive) Then
MsgBox "Drive >" & testdrive & "" & testdrive & "
Das mit dem Verbinden, weiß ich allerdings auch nicht.
Gruß
Chaos