verifier qu'un classeur est ouvert

  • Initiateur de la discussion Initiateur de la discussion David
  • 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 !

D

David

Guest
Bonjour a tous!
Je voudrais savoir quel est le code en VBA qui permet de verifier qu'un classeur different est ouvert.
En fait je programme une macro dans laquelle je vais chercher des données dans une cellule d'un classeur different. Donc je voudrai qu'elle ne s'effectue que si ce classeur est ouvert, sinon je mettrai un message d'erreur.
Merci d'avance!
 
Bonjour le forum, David,

Voici un code qui testz si le fichier est ouvert sinon l'ouvre.

Sub OuvreSiPasOuvert()
' activer le fichier ==> sinon l'ouvrir
On Error Resume Next
Workbooks('simplex.xls').Activate
If Err <> 0 Then
fichier = 'c:\\simplex.xls'
Workbooks.Open Filename:=fichier
If Err <> 0 Then
MsgBox 'Le fichier ' & fichier & '
' est introuvable'
End If
End If
End Sub

En faites le moyen le plus simple de tester si le classeur est ouvert c'est de lui appliquer une commande genre activate. Si ca retourne un message d'erreur c'est que le classeur n'est pas ouvert !

@+

Creepy

PS : je n'ai pas tapé le code je l'ai copier/coller du tres bon site de Excelabo.

Message édité par: Creepy, à: 22/08/2005 12:18
 
Re : verifier qu'un classeur est ouvert

Bonjour,
Je fais revivre les vieux fils, un peu comme un collectionneur de voitures anciennes.
Code:
Sub OuvreSiPasOuvert() 
' activer le fichier ==> sinon l'ouvrir 
On Error Resume Next 
Workbooks('simplex.xls').Activate 
If Err <> 0 Then 
fichier = 'c:\\simplex.xls' 
Workbooks.Open Filename:=fichier 
If Err <> 0 Then 
[COLOR="Red"]MsgBox 'Le fichier ' & fichier & '' est introuvable'[/COLOR] 
End If 
End If 
End Sub
J'ai corrigé le code et mis des guillemets où il faut mais j'ai un problème : Le message d'alerte s'affiche aussi quand le fichier est trouvable (et qu'il s'ouvre correctement).

Je n'y connais rien en gestion d'erreurs mais je suppose que le Err ne vaut pas 0 puisqu'on a eu une première erreur auparavant 😕

Bref, merci de m'aider à résoudre mon soucis 😉

@+
 
Re : verifier qu'un classeur est ouvert

Bonjour Moulinois

modifies peut être le code comme suit :

Code:
Sub OuvreSiPasOuvert()
' activer le fichier ==> sinon l'ouvrir
On Error Resume Next
Workbooks("simplex.xls").Activate
If Err <> 0 Then
    On Error GoTo 0
    fichier = "c:\simplex.xls"
    Workbooks.Open Filename:=fichier
    If Err <> 0 Then
        MsgBox "Le fichier " & fichier & '' est introuvable"
    End If
End If
End Sub

bonne journée
@+

Edition : modifié le chemin et la msgbox...
 
Dernière édition:
Re : verifier qu'un classeur est ouvert

Ouuuuuuuuups, ça ne marche pas 🙁

Quand il ne trouve pas le fichier, j'ai une erreur '1004' comme s'il n'y avait pas de gestion d'erreurs.


EDIT : Voici mon code :
Code:
On Error Resume Next
    Workbooks("EXPORT TEMPS.XLS").Activate
    If Err <> 0 Then
        On Error GoTo 0
        Workbooks.Open Filename:="C:\Etats - Excel\EXPORT TEMPS.XLS"
        If Err <> 0 Then
            MsgBox "Le fichier ""EXPORT TEMPS.XLS"" est introuvable"
            UserForm2.Show [COLOR="Green"]'Lance un formulaire pour demander où est situé le fichier[/COLOR]
            PathBase = UserForm2.Text_Dossier.Value
            [COLOR="Green"]'Il manque le bout où j'ouvre PathBase mais c'est pas son absence qui fait foirer le code...d'ailleurs j'ai fait une connerie puisque je ne demande que le path et pas le chemin complet AVEC le nom du fichier (des fois que)[/COLOR]
        End If
    End If

Si j'ai pas GoTo 0, ça marche normalement si le fichier ne se trouve pas à l'endroit prévu.
Si je l'ai, ça marche si le fichier est à la bonne place.
=> J'aimerais bien que ça marche tout le temps 😀
 
Dernière édition:
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

  • Question Question
Microsoft 365 Classeur Disparu
Réponses
2
Affichages
570
T
  • Résolu(e)
Microsoft 365 pb effacement macro
Réponses
8
Affichages
796
Themax
T
Retour