Bonjour à tous !
Il y a beaucoup de sujet sur ce problème (qui ont généralement la même partie de code) mais je n'arrive pas à l'adapter.
J'ai une Sub dans laquelle j'appelle une fonction à plusieurs reprises.
Depuis cette fonction, je voudrais tester si un autre classeur est ouvert et puis l'activer, sinon, l'ouvrir (et donc l'activer par la même occasion).
J'essaye ceci sans grand succès :
J'ai testé pas mal d'autres codes que j'ai trouvé, essayant à chaque fois de bien adapter... rien à faire...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 report = "C:\Users\... ... ... .xlsm" For Each Wb In Workbooks If Wb.Name = report Then MsgBox "Workbook " & Wb.Name & " déjà ouvert" Wb.Activate Exit For End If Next Wb If Wb Is Nothing Then ' macro que je veux si le fichier est fermé 'MsgBox "macro que je veux si le fichier est fermé" Workbooks.Open Filename:=report End If
Lorsque j'arrive à :
La worksheet est introuvable...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 With ActiveWorkbook With .Worksheets("blablabla") 'reste du code End With End With
Quelqu'un aurait-il une solution simple pour ouvrir mon classeur depuis cette fonction, ou l'activer ?
Ca me parrait super simple... je ne comprends pas pourquoi je n'y arrive pas...
J'espère avoir été suffisamment clair et je reste à votre disposition pour tout complément.
Merci d'avance !
Partager