XL 2010 VBA : Ouvrir et récupérer des données dans des classeurs

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

valou

XLDnaute Nouveau
Bonjour à tous,

J'ai du mal à faire marcher ce code..: Je souhaiterais, en cliquant sur un bouton, ouvrir les uns après les autres des fichiers contenus dans un dossier, effectuer mes instructions (par exemple afficher la cellule A1), fermer le fichier et passer au suivant. Voici le bout de code que j'ai fait en m'inspirant d'exemples.

Pourriez-vous me donner un petit coup de pouce svp

Merci 🙂
Val

Code:
Private Sub CommandButton2_Click()
Dim Fichier As String, Chemin As String
Dim wb As Worksheet
 
Chemin = "C:\Users\toto\Desktop\2016"
Fichier = Dir(Chemin & "*.xlsx")
 
Do While Fichier <> ""
 
'Ouvrir le fichier
'Instructions (exemple : afficher cellule A1)
'Fermer le fichier
 
wb.Close
Set wb = Nothing
Fichier = Dir
Loop
End Sub
 
Bonjour le forum

valou
Ton code devrait plutôt s'écrire ainsi:
VB:
Private Sub CommandButton2_Click()
Dim Fichier As String, Chemin As String
Dim wb As Workbook

Chemin = "C:\Users\toto\Desktop\2016\"
Fichier = Dir(Chemin & "*.xlsx")

Do While Fichier <> ""

'Ouvrir le fichier
Workbooks.open Fichier
set wb=ActiveWorkbook
'Instructions (exemple : afficher cellule A1)
MsgBox wb.sheets(1).range("A1").text
'Fermer le fichier
wb.Close
Set wb = Nothing
Fichier = Dir
Loop
End Sub
 
Bonjour Valou ;-)

Essaye comme ça
Code:
Private Sub CommandButton2_Click()
  Dim Fichier As String, Chemin As String
  Dim Wbk As Workbook

  Chemin = "C:\Users\toto\Desktop\2016\"
  If Right(Chemin,1) <> "\" then Chemin = Chemin & "\"
  Fichier = Dir(Chemin & "*.xlsx")

  Do While Fichier <> ""
    'Ouvrir le fichier
    Set Wbk = Workbooks.Open(Chemin &  Fichier)
    'Instructions (exemple : afficher cellule A1)
    Wbk.Sheets(1).Activate
    Wbk.Sheets(1).Range("A1").Select
    'Fermer le fichier
    Wbk.Close
    Set Wbk = Nothing
    Fichier = Dir
  Loop
End Sub

A+
 
Dernière modification par un modérateur:
Bonjour et merci à vous deux pour les réponses. Hélas cela ne marche toujours pas :'(

Ce lien n'existe plus ton code plante sur la ligne "Workbooks.open Fichier" : le message d'erreur suivant apparait : "nomdemonpremierfichier".xlsx could not be found, check the name... etc étrange, s'il trouve le nom du fichier pourquoi il me dit qu'il le trouve pas..
Ce lien n'existe plus rien ne se passe lors de l'exécution..
 
Merci pour ton aide. J'ai toujours le même problème.. J'ai tenté le code suivant :

Code:
Private Sub CommandButton2_Click()
   Dim Fichier As String, Chemin As String
   Dim Wbk As Workbook
  Chemin = "C:\Users\toto\Desktop\2016"
   Fichier = Dir(Chemin & "*.xlsx")
  Do While Fichier <> ""
  MsgBox ("ok")
     'Ouvrir le fichier
     Set Wbk = Workbooks.Open(Chemin & "\" & Fichier)
     'Instructions (exemple : afficher cellule A1)
     Wbk.Sheets(1).Activate
     MsgBox Wbk.Sheets(1).Range("A1").Value
     'Fermer le fichier
     Wbk.Close
     Set Wbk = Nothing
     Fichier = Dir
   Loop
End Sub

Mais même le mesgbox "ok" ne s'affiche pas.. Je crois que le boucle ne balaye pas mes fichiers, il n'y aurait pas un problème avec "Do While Fichier <> "" " ?

Merci encore pour ton implication.
Val
 
- 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

Discussions similaires

  • Question Question
Microsoft 365 Erreur de macro
Réponses
4
Affichages
795
Réponses
3
Affichages
773
Retour