Avertissement enregistrement en réseau.

Arnaud61

XLDnaute Occasionnel
Bonjour,

Je travail actuellement sur un fichier mis en réseau (sur une dizaine de poste) dans un atelier.

Dans mon atelier, il y a plusieurs postes de travail. Chaque personne renseigne s'il a fait son travail dans le fichier excel.

En gros ça fait: "Planter un clou" - "OK"
"Percer un trou" - "OK"

A chaque fois, qu'une personne renseigne une cellule en mettant "OK" et quelle clique sur une autre cellule le fichier s'enregistre grace à une macro.

Le problème c'est qu'elle est obligé de cliquer sur une autre cellule pour enregistrer les modifications.

Y'a-t-il un moyen de mettre un style de "feu rouge - feu vert" pour dire si le fichier a été sauvegardé ou pas?

Merci de votre aide.

Si le sujet a déjà été traité pouvez vous me donner le lien qui va bien, je n'ai rien trouvé... :D
 

Arnaud61

XLDnaute Occasionnel
Re : Avertissement enregistrement en réseau.

Voilà ce que j'ai comme macro d'enregistrement:

' Enregistrement du classeur après chaque changement dans une cellule

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If ThisWorkbook.Saved = False Then
ThisWorkbook.Save
ThisWorkbook.Application.DisplayAlerts = True
End If
End Sub

Une fois que l'utilisateur renseigne une cellule à l'aide d'une liste déroulante il est obligé de cliquer sur une autre cellule pour prendre en compte sa modification sur le réseau.

S'il oublie de faire la manipulation le fichier de fera pas directement la sauvegarde.

J'essai de mettre une alerte pour lui dire qu'il a oublié de sélectionner une autre cellule.

J'avais pensé à quelque chose du style:

- If document n'est pas sauvegarder Then faire clignoter une cellule en rouge Else document est sauvegarder Then faire clignoter ûne cellule en vert.

Avec la bonne syntaxe ça donnerait quoi? :)
 

Catrice

XLDnaute Barbatruc
Re : Avertissement enregistrement en réseau.

Bonjour,

As tu essayé l'évènement Change plutot que SelectionChange ?

Private Sub Worksheet_Change(ByVal Target As Range)
au lieu de
Private Sub Worksheet_SelectionChange(ByVal Target As Range)

Je viens d'essayer ce code :

Private Sub Worksheet_Change(ByVal Target As Range)
ThisWorkbook.Save
End Sub

Ca enregistre à chaque saisie.
Apres tout, le test pour vérifier si le classeur est enregistré est facultatif puisque tu veux enregistrer à chaque fois. non ?
 
Dernière édition:

Arnaud61

XLDnaute Occasionnel
Re : Avertissement enregistrement en réseau.

Maintenant j'aimerais améliorer mon enregistrement. (je ne sais pas si je dois recréer un topic ou pas... si besoin je le ferais)


Après chaque modification du fichier, il faut environ 4-5 secondes pour que le fichier s'enregistre. Serait-il possible d'afficher un genre de pop-up signalant qu'un enregistrement est un cours?

Comme un feu vert - feu rouge par exemple: Feu Rouge - "Attention enregistrement en cours. Feu Vert "Enregistrement OK"

Merci
 

Catrice

XLDnaute Barbatruc
Re : Avertissement enregistrement en réseau.

Bonsoir,

Pourquoi ne pas enregistrer le fichier à la fermeture ?

Private Sub Workbook_BeforeClose(Cancel As Boolean)
ActiveWorkbook.Save
End Sub

Ou faire un enregistrement automatique toutes les x secondes ?
 

Arnaud61

XLDnaute Occasionnel
Re : Avertissement enregistrement en réseau.

"Pourquoi ne pas enregistrer à la fermeture?"

Parce que le fait d'enregistrer à chaque modification permet à mon fichier de se mettre à jour. Par conséquent, n'importe quel utilisateur peut voir en "temps réel" les modifications appliquer sur ce fichier (qui est en partage).
 

Catrice

XLDnaute Barbatruc
Re : Avertissement enregistrement en réseau.

Bonsoir,

Ci-joint une solution avec une message à l'enregistrement.
Pour tester, copier le fichier sur la machine.
Eventuellement "charger" le fichier pour tester le message dans la durée.
 

Pièces jointes

  • Classeur1.xls
    29 KB · Affichages: 80
  • Classeur1.xls
    29 KB · Affichages: 87
  • Classeur1.xls
    29 KB · Affichages: 87

Catrice

XLDnaute Barbatruc
Re : Avertissement enregistrement en réseau.

Re,

Autre exemple, un classeur qui s'enregistre automatiquement toutes les 10 secondes et qui met un message ...
 

Pièces jointes

  • Classeur2.xls
    32 KB · Affichages: 83
  • Classeur2.xls
    32 KB · Affichages: 86
  • Classeur2.xls
    32 KB · Affichages: 85

Arnaud61

XLDnaute Occasionnel
Re : Avertissement enregistrement en réseau.

Bonjour,

Dans un premier, j'aimerais vous remercier pour votre aide! J'ai déjà amélioré considérablement mon fichier grâce à vous! :)

Maintenant concernant le Userform, ça correspond très bien au message que je voulais.

Dès qu'un utilisateur modifie le fichier, ça enregistre automatiquement et j'ai le message d'alerte qui apparait.

Maintenant mon fichier est en permanence ouvert sur une dizaine de PC. Serait-il possible d'avoir le message d'avertissement sur tous les PC en même temps.

Je m'explique:

"Mr X" enregistre le fichier et voit le message d'alerte. Mais "Mr Y" veut aussi au même moment enregistrer le fichier et il ne sait pas que Mr X est entrain de l'enregistrer.

"Mr Y" aimerais voir un message d'avertissement lorsque le fichier est en cours de sauvegarde sur un autre poste.
 

Discussions similaires

Statistiques des forums

Discussions
312 177
Messages
2 085 973
Membres
103 073
dernier inscrit
MSCHOE16