Forum Discussion
Compter le nombre de collaborateur sur un fichier Excel partagé
Bonjour,
je cherche à créer une macro qui compte le nombre de collaborateur sur un même fichier Excel.
Cette macro servirait à avertir les utilisateurs si une autre personne utilise ce même classeur pour éviter que plusieurs personne travail sur ce fichier.
Merci par avance de votre réponse.
Autant que je me souvienne, seul le premier peut être affiché sous sharepoint.
Pour autant que je me souvienne, il n'y a aucun moyen de voir tous les utilisateurs, pas seulement sous sharepoint.
Cela signifie que vous pouvez toujours voir le premier des classeurs ouvert.
Mais s'il en affiche toujours un, cela signifie que le fichier est ouvert.
Pour faire court, il n'y a aucun moyen de voir tous les utilisateurs à la fois avec VBA, personnellement je ne connais pas d'autre moyen avec office.
Thank you for your understanding and patience
Nikolino
I know I don't know anything (Socrates)
5 Replies
- NikolinoDEPlatinum Contributor
You can use VBA to find out whether a file is already in use, but unfortunately not by whom
... as far as I know (even if that doesn't mean much :)).
With this code you can see if the file is open or not.
Sub test() If IsWorkbookOpen("Mappe2.xls") Then MsgBox "OPEN" Else MsgBox "CLOSE" End If End SubI would be happy to know if I could help.
NikolinoDE
I know I don't know anything (Socrates)
* Kindly Mark and Vote this reply if it helps please, as it will be beneficial to more Community members reading here.
- Baptiste_TOUSSEULCopper Contributor
Merci pour votre réponse, mais le problème est qu'il faut créé la fonction IsWorkbookOpen.
Sur internet, j'ai trouvé ce code mais sa ne marche pas pour le moment.Private Function IsWorkbookOpen(wbname) As Boolean Dim wBook As Workbook Set wBook = Nothing On Error Resume Next Set wBook = Workbooks(wbname) If wBook Is Nothing Then IsWorkbookOpen = False Else: IsWorkbookOpen = True End If End Functionseriez vous me dire pourquoi cela n'a pas fonctionner ou auriez vous un code qui fonctionne ?
- NikolinoDEPlatinum Contributor
Ce texte a été traduit automatiquement, l'utilisateur ne parle pas cette langue.
Vous devez inclure le nom de votre fichier dans votre code. Le fichier que vous voulez voir s'il est ouvert ou non.
Non testé sur Internet : Vous pouvez utiliser le code VBA suivant pour vérifier si le classeur actuel est ouvert ou non.
Sub Informations_utilisateur () 'Si vous voulez l'avoir automatiquement lorsque vous ouvrez le fichier, ajoutez "Auto_Open ()" comme titre Dim Wb As Workbook: Set Wb = Workbooks("Ledossierapprouvé.xlsx") MsgBox " Attention : il utilise actuellement " & UBound(Wb.UserStatus) & _ " Personne(s) ce dossier!", vbInformation End SubCe code est appelé à partir d'un autre classeur, vous pouvez donc voir si le classeur partagé est ouvert ou non.
Veuillez suivre ces instructions.
- Appuyez simultanément sur les touches Alt + F11 pour ouvrir la fenêtre Microsoft Visual Basic pour Applications.
- Dans Microsoft Visual Basic pour Applications, cliquez sur Insérer> Module dans la fenêtre. Ensuite, copiez et collez le code VBA suivant dans la fenêtre de code.
Bouton Insérer dans le classeur :
Ouvrez Excel et sélectionnez l'onglet Développeur en haut. Cliquez sur "Insérer" là-bas.
Pour les champs, cliquez sur le premier symbole pour insérer un bouton.
Sélectionnez la position du bouton dans votre classeur et maintenez le bouton gauche de la souris enfoncé pour déterminer la taille. Cela peut être modifié plus tard.
La fenêtre "Attribuer une macro" s'ouvre maintenant. Cliquez sur une macro préalablement définie.
Merci pour votre patience et votre temps.
Nikolino
Je sais que je ne sais rien (Socrate)