Enregistrement avec CommonDialog sur le réseau

Résolu
cs_cyriloo Messages postés 60 Date d'inscription dimanche 20 novembre 2005 Statut Membre Dernière intervention 12 septembre 2007 - 12 juil. 2007 à 09:28
cs_cyriloo Messages postés 60 Date d'inscription dimanche 20 novembre 2005 Statut Membre Dernière intervention 12 septembre 2007 - 12 juil. 2007 à 09:56
Salut!!!!

Voilou, je me sert d'un CommonDialog pour récupérer une adresse de sauvegarde. Seulement je voudrai que le commonDialog s'ouvre directement sur un dossier qui se trouve sur le réseau, et en cas d'absence du réseau, qu'il souvre sur un répertoire en local sur la machine.
J'ai essayé de faire comme ceci, mais lorsque le réseau est innaccesible, le soft plante, j'ai même essayé avec des on error goto mais il ne passe pas en Error quand le réseau est innaccesible.

If Dir$("\\Data_Serveur", vbDirectory) <> vbNullString Then   'Là j'essai de tester si le réseau est
CommonDialog1.InitDir = "\\Data_Serveur\Public\PV"            'accesible mais ca marche pas!
Else
CommonDialog1.InitDir = "C:\PV"
End If
CommonDialog1.Flags = cdlOFNHideReadOnly
CommonDialog1.FileName = Textbox1.text             'Ici c'est le nom de sauvegarde du fichier
CommonDialog1.Filter = "Fichier (.*xls) | *.xls"
CommonDialog1.ShowSave

Ma question est donc, comment savoir proprement si le réseau est accessible ou non?

Merciiiiii

3 réponses

Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
12 juil. 2007 à 09:38
et voilà exactement pourquoi il ne faut pas utiliser Dir$ pour tester la présence de fichiers :p


Public Function IsFileExisting(ByRef Path As String) As Boolean
IsFileExisting = (GetFileAttributes(Path) <> -1)
End Function

en ayant déclaré :

Private Declare Function GetFileAttributes Lib "kernel32.dll" Alias "GetFileAttributesA" (ByVal lpFileName As String) As Long
3
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
12 juil. 2007 à 09:35
salut,

ton serveur, dans le poste de travail, il a bien une lettre associé au chemin, non ?
S:\, N:\, par exemple

@++

<hr size="2" width="100%" />( Nouveau forum : Exclusivement Office & VBA
0
cs_cyriloo Messages postés 60 Date d'inscription dimanche 20 novembre 2005 Statut Membre Dernière intervention 12 septembre 2007
12 juil. 2007 à 09:56
Énorme[auteurdetail.aspx?ID=2359 Renfield] ! Merci ! ça marche impec.

Mortalino, je peux pas mettre la lettre associé au chemin car les lecteurs réseaux sont montés à l'aide d'un script, et c'est pas dis que tous les utilisateur auront la même lettre de lecteur réseau en fonction de leurs machines.
0
Rejoignez-nous