Vous utilisez un navigateur obsolète. Il se peut que ce site ou d'autres sites Web ne s'affichent pas correctement. Vous devez le mettre à jour ou utiliser un navigateur alternatif.
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 !
Bonjour à tous
J'ai une procédure qui ouvre un fichier source et un cible en vue d'un traitement
Je cherche l'instruction me permettant de ne pas rouvrir le classeur source s'il est deja ouvert
Merci
Déjà ouvert, ça veut dire :
1) Déja ouvert dans le même Excel que ta macro
ou
2) Déjà ouvert sur n'importe quel Excel de cet ordinateur
ou
3) Déjà ouvert par un utlisateur du réseau qui a accès à ce fichier
si déja ouvert dans la même instance d'excel devrait pas posé de problème, enfin me semble t-il... si dans une 2ème instance, testé peut être si du coup il ne s'ouvre pas en lecture seule :
Code:
If Workbooks("classeur.xls").ReadOnly Then MsgBox "classeur déjà ouvert"
Si le fichier source est déjà ouvert, Excel va proposer de le rouvrir en écrasant la première instance d'ou une perte éventuelle des mise à jour et un temps de traitement supplémentaire.
écraser une instance ?? dans quel cas on se trouve, là ??
pour tester si un classeur est ouvert dans la même instance de l'appli Excel..
Code:
Sub TestClasseurExiste()
Dim nomClasseur As String
nomClasseur = "classeur2.xls"
If Not ClasseurExiste(nomClasseur) Is Nothing Then MsgBox "OK"
End Sub
Function ClasseurExiste(c As String) As Workbook
On Error Resume Next
Set ClasseurExiste = Workbooks(c)
End Function
- 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