Excel en réseau

Philippe

XLDnaute Occasionnel
Bonsoir à tous,

j'ai écrit une appli qui gère l'agenda de 10 médecins avec un "interfaçage" dans le fichier clients de façon à pouvoir, en ouvrant la fiche d'un client, savoir quand et avec quel praticien il a pris des RDV (pour allèger le travail de recherche des secrétaires). Le classeur étant lourd (6Mo), les sauvegardes prennent environ 7 secondes, ce qui est long pour les utilisateurs. Pour réduire la fréquence des sauvegardes, j'ai créé un dossier annexe, très léger lui, qui sauvedarde les 200 dernières opérations (un peu comme le ferait un moteur d'annulation). Ce dossier "C:\Monappli\Historique" est sauvegardé à chaque modification. En monoposte tout marche Nickel. Seulement voilà dans 48 h notre réseau sera installé et je ne maitrise pas le sujet... Comment puis-je déterminer l'adresse du fameux dossier"Historique" sur le serveur ?

D'autre part quelle option dois-je choisir: Espace de travail partagé ? et/ou Partager le classeur ?

Pardon d'avoir été si long mais j'essaie d'être précis et l'angoisse monte...
 

Staple1600

XLDnaute Barbatruc
Re : Excel en réseau

Bonsoir


Des infos ici et là:
ici
https://www.excel-downloads.com/threads/chdir-et-chemin-reseau.77372/
https://www.excel-downloads.com/threads/protection-classeur-en-reseau.76340/
https://www.excel-downloads.com/threads/protege-et-deprotege-un-fichier-sur-reseau.75937/
https://www.excel-downloads.com/thr...nts-effectues-par-un-autre-utilisateur.75698/
https://www.excel-downloads.com/threads/macro-chercher-dossier-sur-serveur.75831/
https://www.excel-downloads.com/threads/adresse-reseau.74696/

-------------------------------------------------------------------------------------------------

et là


Des macros utilisées par plusieusr classeusr sur un réseau - microsoft.public.fr.excel | Google Groupes

Ce lien n'existe plus



Colo's Excel Junk Room -vba tips (anglophone)



48 heures pour tout étudier, c'est possible?

Oui..... pour John MacLane ;)

Je commencerais par ici (si je peux me permettre)
https://www.excel-downloads.com/thr...nts-effectues-par-un-autre-utilisateur.75698/


et je te conseillerai de poster ton code VBA ou un fichier exemple anonymisé
pour que les VBAistes chevronnés puissent t'aider efficacement.

En tout cas bon courage et voeux de succès pour la mise en réseau de ton fichier.
 
Dernière édition:

Philippe

XLDnaute Occasionnel
Re : Excel en réseau

Bonjour Stapple,

merci pour toutes ces pistes, je vais bosser desus, pour le fichier, comme je le dis ds mon premier post, il fait 6 Mo !! et je n'ai pas le temps de concocter un fichier exemple ce matin, j'essaie de le faire dans la journée.

Encore Merci,
A+
Philippe
 

Philippe

XLDnaute Occasionnel
Re : Excel en réseau

Rebonjour Stapple,

en gros çà donne çà:

Dans mon classeur "Agenda"
private sub Worksheet_change ()
'<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
' Sauvegarde dans le classeur "Historique agenda"

messag = eff & " " & [A23] & " " & tex ' messag représente donc la modif
qui sera enregistrée
On Error GoTo gerer
repr:
orig=ActiveWorkbook.Name
sauv = "C:\SECRETARIAT\Historique agenda.xls"
Workbooks (sauv).Activate
Sheets("feuil1").Cells((Cells(65536, 1).End(xlUp).Row) + 1, 1) = messag
Workbooks(sauv).Save

GoTo finir
gerer:
Workbooks.Open Filename:=(sauv)
On Error GoTo 0
GoTo repr
finir:
Workbooks(orig).Activate

End Sub


Mon problème donc, tu l'auras compris, est de savoir quelle syntaxe ou quel nom pour la variable "sauv" de façon à acheminer tout celà jusqu'au serveur, en sachant que pour le moment je n'ai aucune info sur le nom du serveur, le nom des disques etc... mais si tu m'indiques la procédure je pense que je saurai m'adapter.

PS: comme tu peux le constater je ne suis pas un pro, je suis un des médecins du cabinet qu'on informatise et mon code plein de "goto" va surement te faire sourire mais bon, çà fonctionne bien. Merci de ton indulgence...

A+
Philippe
 

Staple1600

XLDnaute Barbatruc
Re : Excel en réseau

Bonjour


Pour déterminer le chemin (UNC path)
Exemple de Code à renvoyer le chemin d'accès UNC d'un lecteur réseau


Si ton lecteur réseau a la lettre F (par exemple)
alors Dans ton code
sauv = "F:\\SECRETARIAT\\Historique agenda.xls"




Pour information
Liste les lecteurs réseaux
Code:
Sub NetworkMapDrive()
'source:http://www.dailydoseofexcel.com/archives/2006/06/21/unc-path/
Set WshNetwork = CreateObject(”WScript.Network”)
Set oDrives = WshNetwork.EnumNetworkDrives
DrivesStr = “Network drive Mappings:” & Chr(13)
For i = 0 To oDrives.Count - 1 Step 2
DrivesStr = DrivesStr & “Drive ” & oDrives.Item(i) & ” = ” & oDrives.Item(i + 1) & Chr(13)
Next
MsgBox DrivesStr
End Sub
 
Dernière édition:

Philippe

XLDnaute Occasionnel
Re : Excel en réseau

bonsoir Staple,

Donc, il suffit de connaitre le nom du disque du serveur, pas besoin de dire à excel qu'il doit aller sur le serveur ? et si un lecteur d'un poste utilisateur porte le même nom ?? pas de problème ?
Dans ton exemple l'antislash est doublé, est-ce celà qui indique que le lecteur F (dans l'exemple) est sur le serveur ou est-ce une faute de frappe ? ou autre utilité que je ne connais pas ?

Merci encore de ton aide, si tout fonctionne Vendredi, je te dédierai mon appli Staple (lol)

A+
Philippe
 

Staple1600

XLDnaute Barbatruc
Re : Excel en réseau

Bonsoir


De ce que j'ai compris

Pour accéder à un fichier sur un réseau il faut doubler \

donc

sauv = "F:\\SECRETARIAT\Historique agenda.xls"

La lettre F c'était pour l'exemple (tu peux l'adapter à ton réseau)


Pour information un autre code utile

Code:
Declare Function SetCurrentDirectory Lib "kernel32" Alias "SetCurrentDirectoryA" (ByVal lpPathName As String) As Long
Sub TestAPI()
   Dim CurrentPath As String
   Dim Filename As Variant
   
   'Store the current path
   CurrentPath = CurDir
   
   'Change the path to the one we want
   SetCurrentDirectory "[URL="file://\\SomeServer\Some"]\\SomeServer\Some[/URL] Path"
   
   'Ask for the file name
   Filename = Application.GetSaveAsFilename()
   If TypeName(Filename) <> "Boolean" Then
      MsgBox Filename
   End If
   
   'Change the path back
   SetCurrentDirectory CurrentPath
End Sub
 

Philippe

XLDnaute Occasionnel
Re : Excel en réseau

Bonsoir,

alors ce premier problème est résolu (c'est l'équipe qui installe le réseau qui m'a donné le truc):

sauv="\\adresse IP du serveur\users\Nom du Dossier\Nom du classeur"

ce qui dans mon cas donne litéralement:

sauv="\\1.198.984.1\users\SECRETARIAT\Historique"

(ici l'adresse IP est bidon c'est juste pour l'exemple)

Par contre un BIG problème:

Pour partager le classeur, une fois installé sur le serveur je fais:

Menu outils -> "partager le classeur", dans l'onglet "Modification" je coche "permettre une modification multiutilisateurs" ,je sauvegarde et là: CATASTROPHE si je clicke sur les objets créés pour servir de boutons: "erreur 400", si l'appli. a besoin de déprotéger une feuille pour y écrire des données: "Erreur 1004"...

Si je décoche "permettre une modification multiutilisateur", tout remarche Nickel...

AU SECOURS !!!

L'appli peut elle fonctionner en réseau sans cocher cette option, et prendre en compte automatiquement les modifs. de tous les utilisateurs ???

Je joins un petit fichier qui n'a rien à voir avec mon appli mais dans lequel j'ai reproduis exactement ce qui se passe.... (j'ai coché par défaut, l'option "modif multi utilisateurs" donc çà plante d'entrée, si on décoche=> OK)

Merci d'avance pour votre aide, j'en au grand besoin.

A+
Philippe
 

Pièces jointes

  • Classeur22.xls
    27 KB · Affichages: 66
  • Classeur22.xls
    27 KB · Affichages: 75
  • Classeur22.xls
    27 KB · Affichages: 75

Statistiques des forums

Discussions
312 305
Messages
2 087 077
Membres
103 455
dernier inscrit
saramachado