Détecter l'ouverture d'excel

Résolu/Fermé
zapp56 - 13 mars 2016 à 11:59
 zapp56 - 13 mars 2016 à 18:12
Bonjour,

Je travaille sur Excel 2003.
Pour éviter des problèmes d'interférences avec d'autres classeurs, j'aimerais que dans la "Private Sub Workbook_Open()", le programme teste si excel est déjà ouvert. Ainsi, j'afficherai un message du style "veuillez fermez tous les autres classeurs actifs" et mon classeur se fermera automatiquement.

Merci d'avance,
Cordialement.
A voir également:

1 réponse

cs_Le Pivert Messages postés 7904 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 14 août 2024 729
13 mars 2016 à 16:15
Bonjour,

Comme ceci:

Public Function Excel_Ouvert() As Boolean
  Dim Wb As Excel.Workbook
  Dim Appli As Excel.Application
 On Error Resume Next
  Set Appli = GetObject(, "Excel.Application")
  ' Le test ci-dessous permet de vérifier si Excel est ouvert.
  If Appli Is Nothing Then
    Excel_Ouvert = False
  Else
    Excel_Ouvert = True
  End If
 ' Le test ci-dessous permet de lister les fichiers Excel ouvert.
 For Each Wb In Appli.Workbooks
    If Wb.Name = "Classeur1.xls" Then 'nom du classeur qui contient cette macro
      MsgBox "mon classeur " & Wb.Name
      Else
      MsgBox Excel_Ouvert
     MsgBox Wb.Name
    End If
  Next Wb
 End Function

1
Super ! Merci pour vous quatre :
-Toi,
-Ta rapidité,
-La réponse,
-Son efficacité.
0