Bonjour,
Je souhaite importer des données d'un fichier Excel FICH1 dans un fichier Excel Fich2 dans lequel j'exécute le code. Ces 2 fichiers se trouvent dans le même répertoire, avec d'autres fichiers que je n'ai pas ouvert. J'ouvre pour cela le fichier Fich1 puis j'exécute le code dont la première partie, reproduite ci-dessous, me permet de vérifier que le fichier Fich1 est bien reconnu.
Avec l'exécution pas à pas, je constate que le nom du fichier à lire est bien reconnu. Par contre, la variable N, qui est censée indiquer le nombre de fichiers ouverts est égal à 1, alors qu'il devrait être égal à 2 (Fich1 et Fich2).
Dans la boucle, For, le seul fichier qui apparaît dans la variable Wkb.Name est bien dans le répertoire en cours, mais ce n'est pas le fichier Fich1 que j'ai ouvert.
Pouvez-vous m'aider à trouver l'erreur.
Merci

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
Sub imporData()
Dim Fich1 As String
Dim sNom As String
Dim Wkb As Workbook
Dim N As Integer
Dim WOuvert As Boolean
 
Fich1 = Sheets("D").Cells(4, 2).Value	'Nom du fichier à lire
N = Workbooks.Count
sNom = Fich1
WOuvert = False
For Each Wkb In Workbooks
   If Wkb.Name = sNom Then
      WOuvert = True
      Exit For
   End If
Next Wkb
….