Fichier qui doit être le seul à pouvoir s'ouvrir

  • Initiateur de la discussion Initiateur de la discussion MJ13
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

MJ13

XLDnaute Barbatruc
Bonjour à tous

J'ai un planning que j'ouvre dans une nouvelle instance d'Excel.

Or, je voudrais que quand il est ouvert, on ne puisse pas ouvrir un autre fichier.

Comment en VBA, puis je le faire?

Merci d'avance 🙂.
 
Re : Fichier qui doit être le seul à pouvoir s'ouvrir

Bonjour Pierrot

Merci de ta réponse 🙂.

c'est dans cette même instance que tu veux ne pas pouvoir ouvrir d'autres classeurs ????

En effet, le but est que si je veux que le planning puisse se fermer au bout d'un certain temps d'inactivité, je dois passer par l'ouverture d'une nouvelle instance car lors de la fermeture du fichier, il sauvegarde le planning et ferme Excel. Donc les utilisateurs ne doivent pas pouvoir ouvrir un autre fichier, sinon, ils risquent de perdent leur données.

Le but serait de bloquer l'ouverture de tous fichier si ce fichier est ouvert. Mais la cela me paraît complexe 😕
 
Re : Fichier qui doit être le seul à pouvoir s'ouvrir

Re,

si j'ai bien compris, essaye avec un module de classe, codes ci-dessous à placer dans ton fichier planning :

dans un module standard :
Code:
Option Explicit
Public z As New Classe1

dans le module "thisworkbook" :
Code:
Option Explicit
Private Sub Workbook_Open()
Set z.MonExcel = Application
End Sub

dans un module de classe nommé "classe1" :
Code:
Option Explicit
Public WithEvents MonExcel As Application
Private Sub MonExcel_WorkbookOpen(ByVal Wb As Workbook)
If Wb.Name <> ThisWorkbook.Name Then Wb.Close: MsgBox "Interdit..."
End Sub

bonne fin d'après midi
@+
 
Re : Fichier qui doit être le seul à pouvoir s'ouvrir

Re,

A noter, tu peux rajouter cet événement dans le module de classe pour éviter la création de nouveaux classeurs...
Code:
Private Sub MonExcel_NewWorkbook(ByVal Wb As Workbook)
Wb.Close: MsgBox "Interdit..."
End Sub

@+
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
7
Affichages
421
Retour