![]() |
|
Forum
|
|
|
#1 (permalink) |
|
XLDnaute Junior
Date d'inscription: novembre 2007
Messages: 81
|
bonjour
j'ai un fichier nommé " StockMagasinMoule", contenant 6 usf, qui fonctionne très bien. Un petit souci depuis qu'il est en réseau: quand le fichier est ouvert sur 2 postes(ce qui arrive souvent), celui qui est en lecture seule pose problème. Lorsque l'utilisateur quitte l'application, une erreur se produit: un fichier nommé"stockMagasinMoule" existe déjà, voulez-vous le remplacer? si on met oui, çà plante, si on met non, çà provoque une erreur, normal, puisque dans thisworkbook, on demande à ce que le fichier soit enregistré en quittant, n'étant qu'en lecture, il n'autorise pas cette action. L'idéal, serait que le poste qui ouvre le fichier en lecture seule, puisse quitter l'application sans que çà enregistre, ou qu'à l'ouverture, un message lui signifie quel poste est ouvert( peut-être récupérer les données de la feuille connexion par exemple,qui enregistre chaque connexion) Je résume mes attentes: 1) trouver une soluce pour cette erreur quand le poste en lecture seule quitte l'appli 2) le poste en lecture seule ne doit pas avoir accès aux USF 2,3 et 4. Car de toute façon, il ne peut modifier et çà génère également une erreur. 3) je pense que le mieux serait d'identifier le poste ouvert quand le deuxième s'ouvre, que le 1er ferme pour que le 2ème puisse travailler C'est un fichier de gestion de stock (service 11 personnes), qui, sans réseau est caduc. J'espère que vous saurez donner une suite favorable à cette demande. Je n'ai jamais été déçu pour le moment merci au fofo http://cjoint.com/?gCjUnLtbph - nom: hatier MdP:tina clic droit sur visualisation quantité dans la colonne référence déclenche des usf. J'ai également crée deux boutons pour déclencher USF 1 et 5 Dernière modification par aredo ; 05/07/2008 à 07h52. |
|
|
|
| ANNONCES | |||
|
|
|
|
#2 (permalink) |
|
XLDnaute Barbatruc
Date d'inscription: février 2005
Localisation: Saint Philbert de Grand Lieu
Version Excel : Excel XP (PC)
Messages: 4 595
|
Bonjour aredo,
Je pense que pour tes problèmes 1 et 2 tu peux utiliser ça : Code:
If ThisWorkbook.ReadOnly = True Then ... Else ... End If Bon week-end.
__________________
![]() A+ ![]() |
|
|
|
|
|
#3 (permalink) |
|
XLDnaute Barbatruc
Date d'inscription: avril 2005
Localisation: MONTARGIS (la Venise du Gâtinais)
Version Excel : Excel 2003 (PC)
Messages: 2 283
|
Salut Aredo,
Il existe une fonction pour savoir si le classeur est en lecture seule : ThisWorkbook.ReadOnly Donc en appliquant la valeur retournée à une variable : WbkRO (par exemple) Tu peux corriger tes soucis 1 et 2 ![]() Petit truc constaté : - lors de l'ouverture du USF1 tu peux sélectionner la ligne 3907-3 alors qu'elle est non visible !? - tu devrais mettre le propriété "XlSheetVeryHidden" sur ta feuille "Users" sinon l'utilisateur peux l'afficher, c'est vrai ça ne lui sert pas à grand chose ![]() A+ Edit : Oups, salut JMPS Edit : voir fichier plus bas
__________________
Cordi@lement. La politesse est comme le zéro, qui, sans avoir de valeur en soi, en ajoute à toutes choses. ![]() VBA, vous ne savez pas comment faire ... Pensez à l'enregistreur de macro ! Menu -> Outils -> Macro -> Nouvelle macro ![]() Si vous souhaitez rejoindre le club des Supporters d'XLD ... c'est ICI Petite citation : C'est en XLDant que l'on devient XLDnaute Barbatruc ...
Dernière modification par BrunoM45 ; 09/07/2008 à 19h41. |
|
|
|
|
|
#4 (permalink) |
|
XLDnaute Junior
Date d'inscription: novembre 2007
Messages: 81
|
salut jmps, salut BrunoM45, salut le fofo,
merci à vous d'avoir répondu aussi vite. J'ai testé aujourd'hui la modif de bruno. C'est tout bon, je n'ai plus de message d'erreur.(point 1 et 2 ok) Merci beaucoup d'avoir pris le temps d'intégrer cette fonction ds mon fichier. Petit truc constaté : - lors de l'ouverture du USF1 tu peux sélectionner la ligne 3907-3 alors qu'elle est non visible !? = elle est visible normalement, peut-être une erreur de manip - tu devrais mettre la propriété "XlSheetVeryHidden" sur ta feuille "Users" Normalement, elle est dans cet état. J'aimerais si tu le veux bien que l'on regarde le 3ème point évoqué plus haut. Je rappelle que c'est un fichier de gestion de stock, on l'ouvre, on sort ou entre une pièce. Ceci plusieurs fois ds la journée sur des postes différents.(il faut que le fichier ne soit ouvert que sur un poste pour que les changements puissent se faire. Voici ma demande: lorsque la fenêtre "Impossible d'utiliser ce bouton, vous êtes en lecture seule" s'affiche, l'idéal serait de rajouter ceci: "le poste a été ouvert par (nom de l'utilisateur)". Une info que l'on pourrait récupérer dans la feuille "connexion"(incrémentée automatiquement à chaque fois qu'un utilisateur ouvre le fichier). Ceci pour permettre d'identifier le poste connecté, afin de le fermer.(cette feuille connexion existe déjà) Est-ce possible d'intégrer cet élément, dans le code. merci encore pour le partage. à bientôt, j'espère Dernière modification par aredo ; 07/07/2008 à 23h01. |
|
|
|
|
|
#5 (permalink) |
|
XLDnaute Occasionel
Date d'inscription: mai 2008
Messages: 111
|
bonsoir aredo et tout le monde
essaye cette ligne : MsgBox (Environ("USERNAME") & " - " & CStr(Format(Now, "dd/mm/yyyy"))) elle permet de récupérer le nom du PC il te reste plus qu'à l'écrire sur une feuille cachée à l'ouverture du fichier si ThisWorkbook.ReadOnly = False et à l'afficher si ThisWorkbook.ReadOnly = True tu peux aussi faire le lien dans une autre feuille entre le nom du PC (unique en général) et le nom et n° de téléphone de l'utilisateur. Bonne soirée Dernière modification par mromain ; 07/07/2008 à 22h54. |
|
|
|
|
|
#6 (permalink) |
|
XLDnaute Junior
Date d'inscription: novembre 2007
Messages: 81
|
salut mromain
Est-ce bien le nom du pc déjà ouvert qui apparaît? ton idée peut m'intéresser, c'est surement tout bête, mais je n'arrive pas à l'intégrer dans le code existant, et mettre cette fonction en pratique. Désolé, je suis débutant, en tout cas merci pour ton intervention. Effectivement, cela me donne le nom du poste, mais pas le nom de l'intervenant. On connaît plus le nom des personnes et donc de leur service que celui du pc. Je me raccroche à mon idée de départ, si quelqu'un a une petite idée pour l'intégrer dans mon code existant. Enfin, s'il n'y a pas d'autre moyen! bonne journée Dernière modification par aredo ; 08/07/2008 à 08h52. |
|
|
|
|
|
#7 (permalink) |
|
XLDnaute Barbatruc
Date d'inscription: avril 2005
Localisation: MONTARGIS (la Venise du Gâtinais)
Version Excel : Excel 2003 (PC)
Messages: 2 283
|
Salut tout le monde,
Aredo, Ne serait-il pas plus simple de mettre un timer à l'ouverture du fichier. Si aucun changement n'est intervenu dans un délai imparti, le fichier se ferme tout seul ![]() A toi de voir ... A+
__________________
Cordi@lement. La politesse est comme le zéro, qui, sans avoir de valeur en soi, en ajoute à toutes choses. ![]() VBA, vous ne savez pas comment faire ... Pensez à l'enregistreur de macro ! Menu -> Outils -> Macro -> Nouvelle macro ![]() Si vous souhaitez rejoindre le club des Supporters d'XLD ... c'est ICI Petite citation : C'est en XLDant que l'on devient XLDnaute Barbatruc ...
|
|
|
|
|
|
#8 (permalink) |
|
XLDnaute Junior
Date d'inscription: novembre 2007
Messages: 81
|
salut bruno
je n'avais pas pensé à cette éventualité. Cà serait plus simple et cela conviendrait parfaitement à l'utilisation. Si tu peux intégrer cet état, j'en serais pleinement satisfait bonne soirée |
|
|
|
|
|
#9 (permalink) |
|
XLDnaute Barbatruc
Date d'inscription: avril 2005
Localisation: MONTARGIS (la Venise du Gâtinais)
Version Excel : Excel 2003 (PC)
Messages: 2 283
|
Re,
Voilà ton fichier modifié, qui se ferme tout seul au bout de 15 secondes Timer mis dans l'évènement Open de ThisWorkbook ![]() A+
__________________
Cordi@lement. La politesse est comme le zéro, qui, sans avoir de valeur en soi, en ajoute à toutes choses. ![]() VBA, vous ne savez pas comment faire ... Pensez à l'enregistreur de macro ! Menu -> Outils -> Macro -> Nouvelle macro ![]() Si vous souhaitez rejoindre le club des Supporters d'XLD ... c'est ICI Petite citation : C'est en XLDant que l'on devient XLDnaute Barbatruc ...
Dernière modification par BrunoM45 ; 09/07/2008 à 19h42. Motif: Voir fichier plus bas |
|
|
|
|
|
#10 (permalink) |
|
XLDnaute Junior
Date d'inscription: novembre 2007
Messages: 81
|
re,
est-il possible qu'il enregistre en quittant? car si on laisse ouvert aprés une saisie, il ne la prend pas en compte. (en l'état,avant la modif, il enregistre automatiquement lorsque l'on ferme le fichier ) je remarque à l'instant qu'il se coupe après 15 sec. quoique l'on fasse, même si on saisit, il ferme à peine ouvert. merci beaucoup bonne soirée Dernière modification par aredo ; 09/07/2008 à 00h12. |
|
|
|
|
|
#11 (permalink) |
|
XLDnaute Barbatruc
Date d'inscription: avril 2005
Localisation: MONTARGIS (la Venise du Gâtinais)
Version Excel : Excel 2003 (PC)
Messages: 2 283
|
Salut Aredo,
J'ai juste oublié quelques trucs par ci, par là ![]() Fichier modifié : - le timer est reculé de 20 secondes à chaque fois qu'il y a un changement dans le classeur - la fermeture se fait avec enregistremetn du fichier Voili, voilà ![]()
__________________
Cordi@lement. La politesse est comme le zéro, qui, sans avoir de valeur en soi, en ajoute à toutes choses. ![]() VBA, vous ne savez pas comment faire ... Pensez à l'enregistreur de macro ! Menu -> Outils -> Macro -> Nouvelle macro ![]() Si vous souhaitez rejoindre le club des Supporters d'XLD ... c'est ICI Petite citation : C'est en XLDant que l'on devient XLDnaute Barbatruc ...
|
|
|
|
|
|
#12 (permalink) |
|
XLDnaute Junior
Date d'inscription: novembre 2007
Messages: 81
|
salut Bruno,
ok, çà fonctionne super, je teste ce changement demain. Un autre petit détail remarqué sur le réseau: quand le fichier est en lecture seule, le nom de l'utilisateur n'est pas sauvegardé dans la feuille connexion.(à chaque ouverture de fichier, il y a une traçabilité, j'aimerais qu'elle le soit également lorsque un autre poste s'ouvre) Est-ce que "WbkRO = ThisWorkbook.ReadOnly" est mal plaçé ds le code. merci beaucoup bruno, mon fichier est quasiment près pour affronter la dure loi de l'entreprise! bonne soirée |
|
|
|
|
|
#13 (permalink) |
|
XLDnaute Barbatruc
Date d'inscription: avril 2005
Localisation: MONTARGIS (la Venise du Gâtinais)
Version Excel : Excel 2003 (PC)
Messages: 2 283
|
Salut Aredo,
Pour moi la traçabilité n'a besoin d'exister qu'a partir du moment ou on fait des modifications dans le fichier, donc il n'est plus en lecture seule ![]() Sinon, après il faut utiliser un fichier log, dans lequel on inscrit toutes les activité. Mais ça devient un fichier "texte" De plus sur un serveur, on peut mettre en place un audit de document. A+
__________________
Cordi@lement. La politesse est comme le zéro, qui, sans avoir de valeur en soi, en ajoute à toutes choses. ![]() VBA, vous ne savez pas comment faire ... Pensez à l'enregistreur de macro ! Menu -> Outils -> Macro -> Nouvelle macro ![]() Si vous souhaitez rejoindre le club des Supporters d'XLD ... c'est ICI Petite citation : C'est en XLDant que l'on devient XLDnaute Barbatruc ...
|
|
|
|
|
|
#14 (permalink) |
|
XLDnaute Junior
Date d'inscription: novembre 2007
Messages: 81
|
bonsoir bruno,
En fait, c'était au cas ou l'opérateur visionne le n° du casier d'une pièce, qu'il puisse la sortir sans la comptabiliser(étant en lecture seule). La traçabilité aurait permis de connaître l'utilisateur responsable. Depuis que tu as mis la fonction timer, ce point est en parti résolu. Cà me va. Parcontre, j'ai rencontré un autre souci, depuis les deux derniers changements dans le code. En utilisation normale, tout paraît fonctionnel. Un problème survient lorsque de temps en temps, je suis amené à modifier le contenu de certaines feuilles(il y a en totalité une cinquantaine de feuilles). Avant, lorsque par exemple, dans une feuille, je devais insérer une ligne pour y rentrer une nouvelle référence, une fenêtre s'ouvrait: "erreur 13 incompatibilité de type", mais la modification prenait effet et tout était ok, en prenant garde avant de modifier d'avoir activer la macro "déprotège/protège". Depuis les derniers changements, une autre erreur en plus de l'autre apparaît: "erreur 1004 la méthode OnTime de l'objet Application a échoué", et la modif. ne prend pas effet.(lors du clic droit sur référence, la modif. n'apparaît pas) Ceci est fort génant, car souvent je dois intervenir dans les feuilles afin d'insérer ou de copier/coller etc... J'espère ne pas abuser, mais on est proche du but, ce serait dommage d'en rester là. Merci en tout cas d'avoir finalisé mon projet, je te dois un grand respect. j'ai oublié (ce que tu as fait me convient parfaitement), si c'est possible et n'occasionne pas un grand changement. Ce serait bien si la fonction timer pouvait s'annuler lorsque l'on déplace la souris, car lors de modif, je ne déclenche aucun usf, juste de la saisie ds les cellules(insertion etc...) et le timer se déclenche donc rapidement et je ne peux pas trop allonger le temps sinon en utilisation normale, ce serait trop long. Qu'en penses-tu? bonne soirée Dernière modification par aredo ; 10/07/2008 à 23h17. |
|
|
|
|
|
#15 (permalink) |
|
XLDnaute Junior
Date d'inscription: novembre 2007
Messages: 81
|
bonsoir à tous
Après quelque temps d'utilisation du fichier en réseau, voici un des points prioritaires à éclaircir. je reformule ma demande. lorsque je modifie une feuille, car de nouvelles références apparaissent(il y a en totalité une cinquantaine de feuilles), une erreur apparaît "erreur 13 incompatibilité de type" , puis "erreur 1004 la méthode OnTime de l'objet Application a échoué". Lorsque j'utilise le débogage, l'appli. s'arrête sur "reference = Target.Value", présent sur toutes les feuilles. Je rappelle que le fichier marche bien lorsque je déclenche toutes les usf. Le bug se produit lorsque je veux insérer une ligne, copier coller etc..dans n'importe quelle feuille. Si quelqu'un a une idée Le fichier dont les deux dernières modifs ont été réalisées par bruno, que je remercie au passage. se trouve quatre messages plus haut. à bientôt, je l'espère nom: posté - MdP : posté clic droit sur visualisation quantité dans la colonne référence déclenche des usf. J'ai également crée deux boutons pour déclencher USF 1 et 5 Dernière modification par aredo ; 22/07/2008 à 09h04. |
|
|
|
| ANNONCES | |
![]() |
| Liens sociaux |
| Outils de la discussion | |
|
|
Discussions similaires
|
||||
| Discussion | Auteur | Forum | Réponses | Dernier message |
| très important, ça presse !!!!!! | Goldmane | Forum Excel | 1 | 28/11/2005 12h43 |
| ouverture fichier excel très très long | zesuila | Forum Excel Downloads - Archives | 8 | 15/11/2004 09h00 |
| trés important | laila | Forum Excel Downloads - Archives | 1 | 15/09/2004 14h58 |
| jours et place tres important | joel | Forum Excel Downloads - Archives | 3 | 17/05/2004 11h15 |
| Macro tres tres lente (15 secondes pour faire une action sur 16*5 cellules) | cyb-cd | Forum Excel Downloads - Archives | 13 | 09/01/2003 13h48 |