Savoir si un fichier excel est ouvert et le fermer si c'est le cas
skunkbedo
Messages postés1Date d'inscriptionlundi 9 février 2004StatutMembreDernière intervention14 mai 2004
-
14 mai 2004 à 16:24
cs_CanisLupus
Messages postés3757Date d'inscriptionmardi 23 septembre 2003StatutMembreDernière intervention13 mars 2006
-
14 mai 2004 à 20:01
Salut tout le monde! Je vsuis en train de développer une application en VB qui utilise Excel. L'application permet d'ouvrir, de modifier et d'enregistrer des info dans un fichier excel. Mon problème c'est que j'aimerais savoir si le fichier que j'utilise est ouvert pour pas qu'il y est de conflit ( pas de lecture seule). de plus si le fichier est ouvert j'aimerais pouvoir le fermer. voilà c tout. merci d'avance pour votre aide
maintenant, g fais une appli du même genre et d'abord, je teste si excel est déjà chargé avec :
' Chargement de l'application Excel
On Error Resume Next
Set AppExcel = GetObject(, "Excel.Application")
If Err.Number <> 0 Then
Set AppExcel = CreateObject("Excel.Application")
End If
Err.Clear
On Error GoTo 0
Explication : si excel est déjà chargé, je fais un getobject sinon je le crée.
Si le getobject ne provoque pas d'ereur, c cool, tu charge le classeur que tu veux par :
Set ClasseurExcel = AppExcel.Workbooks.Open(Chemin_NomClasseur)
sinon, tu explores la collection des workbooks comme ça :
Dim w As Workbook
For Each w In AppExcel.Workbooks
If w.Name = "NomClasseur" Then
w.Save
w.Close
End If
Next
comme ça, si le fichier est ouvert, tu le sauve et tu le fermes, après, à toi de voir si tu veux le réouvrir ou non.