XL 2010 [VBA] pas d'alerte à l'ouverture d'un fichier déjà ouvert chez autre user

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 !

F22Raptor

XLDnaute Impliqué
Hello
J'ouvre par macro un fichier qui peut éventuellement être ouvert sur un autre poste.
Mon souhait est donc :
* ouvrir le fichier en lecture écriture
* s'il est déjà ouvert, l'ouvrir en lecture seule (sans avoir la boîte "il est ouvert chez Machin, voulez-vous l'ouvrir en lecture seule"

J'ai essayé de mettre un Application.DisplayAlerts=False juste avant le Workbooks.Open, mais j'ai tout de même la boîte d'alerte Lecture Seule ...

Une idée ?

Merci !
 
le DisplayAlerts ne marche pas 🙁

Au pire, j'utiliserai un bout de code un peu lourdingue (ci-dessous)


Sub Verif_Fichier_Ouvert(NomFichierComplet As String, NomFichier As String)

Dim FF As Integer
Dim WB As Workbook
On Error Resume Next

FF = FreeFile

Open NomFichierComplet For Input Lock Read Write As FF
Close FF

'si fichier déjà ouvert (donc en lecture seule) alors 70, si déjà ouvert dans l'excel de l'utilisateur en lecture écriture alors 11, si ouvert
'et en lecture seule alors 22, sinon 0 (pas ouvert et disponible)
FichierOuvert = Err.Number

For Each WB In Workbooks
If WB.Name = NomFichier And FichierOuvert = 70 Then FichierOuvert = 11
If WB.Name = NomFichier And FichierOuvert = 0 Then FichierOuvert = 22
Next

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
19
Affichages
3 K
Retour