Bonjour,

N'ayant pas beaucoup d'expérience avec VBA sous Excel j'essaie de me débrouiller mais ai un soucis actuellement.

Lorsque j'ouvre et ferme un fichier j'utilise les commandes suivantes:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
 Dim NomDuFichier As Variant
 NomDuFichier = "UnFichier.xlsx"
 Workbooks.Open (NomDuFichier)
 Windows(NomDuFichier).Activate
 .
 .
 .
 Workbooks(NomDuFichier).Close SaveChanges:=False
 
     Maintenant je désire remplacer l'ouverture statique du fichier par une boite de dialogue ... mais ai un soucis lors de la fermeture du fichier  
 
 Dim NomDuFichier As Variant
 NomDuFichier = Application.GetOpenFilename(FileFilter := ..., "*.xlsx", ...)
 Workbooks.Open (NomDuFichier)
 Windows(NomDuFichier).Activate
 .
 .
 .
 Workbooks(NomDuFichier).Close SaveChanges:=False
Il semble que le Windows(NomDuFichier)>Actvaite ne soit plus nécessaire
mais le Workbooks().Close me donne un message d'erreur:

Run-time error '9':
Subscript out of range
Je ne comprends pas pourquoi, si j'enlève cette ligne de code, le fichier reste
ouvert ???

Quelqu'un a une idée?

Merci d'avance.

Guy