Utiliser les valeurs d'un tableau comme variable
Bonjour à tous,
J'ai besoin d'aide pour un problème basique, téllement basique que j'arrive même pas a faire de recherche tellement les termes sont génériques.
Donc je cherche à ouvrir et copier plusieurs fichiers Excel dans un fichier maître si on peut dire.
J'utilise donc le code suivant pour le faire
source = Dir(ThisWorkbook.Path & "\" & "Achat*" & ".*")
Set Source_Workbook = Workbooks.Open(folderpath & "\" & source)
Source_Workbook.Sheets(1).Copy Before:=Target_Workbook.Sheets(1)
Source_Workbook.Close SaveChanges:=False
ActiveSheet.name = "Achat"Rien de bien folichon sur mon code jusque la.
Le petit problème c'est que j'ai 7 fichiers différents à intégrer dans mon fichier maïtre, et tous avec nom bien distinct.
J'ai déjà trouvé la solution en enregistrant mon bout de code 7 fois puis en modifiant le nom du fichier que j'ouvre dans la partie "source" mais je me dis que c'est très très moche et pas super pratique à modifier.
Du coup je me dis que je dois pouvoir inclure mon code dans une boucle, qui me permettrait modifier le nom du fichier à chaque fois que ma boucle se joue.
Petit problème je ne sais pas comment déclarer une variable qui pourrait s'incrémenter et changer de valeur à chaque fois.
Voici les noms de mes fichiers:
Achat
Article
Dépense
Facture...
Quelqu'un aurait une idée ? J'ai beau chercher variable et tableau, mais je pense que ma recherche est beaucoup trop vague.
Merci beaucoup.
Bonjour,
Quelque chose comme ça ?
Sub test1()
Dim Fichiers As Variant
Fichiers = Array("Achat", "Article", "dépense", "Facture")
For i = 0 To 3
Source = Dir(ThisWorkbook.Path & "\" & Fichiers(i) & "*" & ".*")
Set Source_Workbook = Workbooks.Open(folderpath & "\" & Source)
Source_Workbook.Sheets(1).Copy Before:=Target_Workbook.Sheets(1)
Source_Workbook.Close SaveChanges:=False
ActiveSheet.Name = Fichiers(i)
Next i
End SubDaniel