total de plusieurs fichier avec vba

Le
marc
Bonjour à vous tous.
Voici mon problème:
J'ai un dossier sur le C:Clientsuméro11
Dans ce dossier, j'ai (présentement) 4 fichiers:
Classeur 1
Classeur 2
Classeur 3
Total

Dans chaque fichier (Classeur 1, 2,et 3) j'ai une feuille qui se nomme Mois
Dans le fichier Total, sur la feuille 1 j'aimerais avoir à partir de la cellule B6:
B6= le premier nom du fichier dans ce répertoire (Classeur 1) C6= le montant de la feuille Mois, cellule A1
B7= le deuxième nom du fichier dans ce répertoire (Classeur 2) C6= le montant de la feuille Mois, cellule A1
etc, etc.
Ce que j'aimerais, c'est qu'à chaque fois que j'ajoute un fichier dans ce répertoire, le fichier total se mette à jour
automatiquement.
Est-ce que que quelqu'un peut m'aider.
Merci de votre aide à l'avance
Marc
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses Page 1 / 3
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
isabelle
Le #19382711
bonjour Marc,

copie cette macro sur la page code de ThisWorkBook,

Sub Fichier_Total()
Dim fso As Object, Dossier As Object, NomDossier
Dim Files As Object, File As Object, i As Integer
Set fso = CreateObject("Scripting.FileSystemObject")
NomDossier = "c:zaza" '"C:Clientsnuméro11"
Set Dossier = fso.GetFolder(NomDossier)
Set Files = Dossier.Files
If Files.Count <> 0 Then
For Each File In Files
If File.Name <> "Total" Then
y = y + 1
Cells(6, y + 1) = File.Name
Cells(7, y + 1) = ExecuteExcel4Macro("'" & NomDossier & "[" &
File.Name & "]Mois'!R1C1")
End If
Next
End If
End Sub

isabelle

marc a écrit :
Bonjour à vous tous.
Voici mon problème:
J'ai un dossier sur le C:Clientsnuméro11
Dans ce dossier, j'ai (présentement) 4 fichiers:
Classeur 1
Classeur 2
Classeur 3
Total

Dans chaque fichier (Classeur 1, 2,et 3) j'ai une feuille qui se nomme Mois
Dans le fichier Total, sur la feuille 1 j'aimerais avoir à partir de la cellule B6:
B6= le premier nom du fichier dans ce répertoire (Classeur 1) C6= le montant de la feuille Mois, cellule A1
B7= le deuxième nom du fichier dans ce répertoire (Classeur 2) C6= le montant de la feuille Mois, cellule A1
etc, etc.
Ce que j'aimerais, c'est qu'à chaque fois que j'ajoute un fichier dans ce répertoire, le fichier total se mette à jour
automatiquement.
Est-ce que que quelqu'un peut m'aider.
Merci de votre aide à l'avance
Marc





isabelle
Le #19382691
ps/ copie cette macro sur la page code de ThisWorkBook du fichier Total

isabelle

isabelle a écrit :
bonjour Marc,

copie cette macro sur la page code de ThisWorkBook,

Sub Fichier_Total()
Dim fso As Object, Dossier As Object, NomDossier
Dim Files As Object, File As Object, i As Integer
Set fso = CreateObject("Scripting.FileSystemObject")
NomDossier = "c:zaza" '"C:Clientsnuméro11"
Set Dossier = fso.GetFolder(NomDossier)
Set Files = Dossier.Files
If Files.Count <> 0 Then
For Each File In Files
If File.Name <> "Total" Then
y = y + 1
Cells(6, y + 1) = File.Name
Cells(7, y + 1) = ExecuteExcel4Macro("'" & NomDossier & "[" &
File.Name & "]Mois'!R1C1")
End If
Next
End If
End Sub

isabelle

marc a écrit :
Bonjour à vous tous.
Voici mon problème:
J'ai un dossier sur le C:Clientsnuméro11
Dans ce dossier, j'ai (présentement) 4 fichiers:
Classeur 1
Classeur 2
Classeur 3
Total

Dans chaque fichier (Classeur 1, 2,et 3) j'ai une feuille qui se
nomme Mois
Dans le fichier Total, sur la feuille 1 j'aimerais avoir à partir de
la cellule B6:
B6= le premier nom du fichier dans ce répertoire (Classeur 1) C6=
le montant de la feuille Mois, cellule A1
B7= le deuxième nom du fichier dans ce répertoire (Classeur 2) C6=
le montant de la feuille Mois, cellule A1
etc, etc.
Ce que j'aimerais, c'est qu'à chaque fois que j'ajoute un fichier
dans ce répertoire, le fichier total se mette à jour automatiquement.
Est-ce que que quelqu'un peut m'aider.
Merci de votre aide à l'avance
Marc






marc
Le #19382951
Bonjour Isabelle
Ce code ce place en rouge dans mon éditeur:
Cells(7, y + 1) = ExecuteExcel4Macro("'" & NomDossier & "[" &
File.Name & "]Mois'!R1C1")

Merci de toujours m'aider
Marc

"isabelle" a écrit dans le message de news:
ps/ copie cette macro sur la page code de ThisWorkBook du fichier Total

isabelle

isabelle a écrit :
bonjour Marc,

copie cette macro sur la page code de ThisWorkBook,

Sub Fichier_Total()
Dim fso As Object, Dossier As Object, NomDossier
Dim Files As Object, File As Object, i As Integer
Set fso = CreateObject("Scripting.FileSystemObject")
NomDossier = "c:zaza" '"C:Clientsnuméro11"
Set Dossier = fso.GetFolder(NomDossier)
Set Files = Dossier.Files
If Files.Count <> 0 Then
For Each File In Files
If File.Name <> "Total" Then
y = y + 1
Cells(6, y + 1) = File.Name
Cells(7, y + 1) = ExecuteExcel4Macro("'" & NomDossier & "[" & File.Name & "]Mois'!R1C1")
End If
Next
End If
End Sub

isabelle

marc a écrit :
Bonjour à vous tous.
Voici mon problème:
J'ai un dossier sur le C:Clientsnuméro11
Dans ce dossier, j'ai (présentement) 4 fichiers:
Classeur 1
Classeur 2
Classeur 3
Total

Dans chaque fichier (Classeur 1, 2,et 3) j'ai une feuille qui se nomme Mois
Dans le fichier Total, sur la feuille 1 j'aimerais avoir à partir de la cellule B6:
B6= le premier nom du fichier dans ce répertoire (Classeur 1) C6= le montant de la feuille Mois, cellule A1
B7= le deuxième nom du fichier dans ce répertoire (Classeur 2) C6= le montant de la feuille Mois, cellule A1
etc, etc.
Ce que j'aimerais, c'est qu'à chaque fois que j'ajoute un fichier dans ce répertoire, le fichier total se mette à jour
automatiquement.
Est-ce que que quelqu'un peut m'aider.
Merci de votre aide à l'avance
Marc








isabelle
Le #19383041
bonjour Marc,

remets le sur une seule ligne,

Cells(7, y + 1) = ExecuteExcel4Macro("'" & NomDossier & "[" & File.Name & "]Mois'!R1C1")

isabelle

marc a écrit :
Bonjour Isabelle
Ce code ce place en rouge dans mon éditeur:
Cells(7, y + 1) = ExecuteExcel4Macro("'" & NomDossier & "[" &
File.Name & "]Mois'!R1C1")

Merci de toujours m'aider
Marc

"isabelle" a écrit dans le message de news:

ps/ copie cette macro sur la page code de ThisWorkBook du fichier Total

isabelle

isabelle a écrit :

bonjour Marc,

copie cette macro sur la page code de ThisWorkBook,

Sub Fichier_Total()
Dim fso As Object, Dossier As Object, NomDossier
Dim Files As Object, File As Object, i As Integer
Set fso = CreateObject("Scripting.FileSystemObject")
NomDossier = "c:zaza" '"C:Clientsnuméro11"
Set Dossier = fso.GetFolder(NomDossier)
Set Files = Dossier.Files
If Files.Count <> 0 Then
For Each File In Files
If File.Name <> "Total" Then
y = y + 1
Cells(6, y + 1) = File.Name
Cells(7, y + 1) = ExecuteExcel4Macro("'" & NomDossier & "[" & File.Name & "]Mois'!R1C1")
End If
Next
End If
End Sub

isabelle

marc a écrit :

Bonjour à vous tous.
Voici mon problème:
J'ai un dossier sur le C:Clientsnuméro11
Dans ce dossier, j'ai (présentement) 4 fichiers:
Classeur 1
Classeur 2
Classeur 3
Total

Dans chaque fichier (Classeur 1, 2,et 3) j'ai une feuille qui se nomme Mois
Dans le fichier Total, sur la feuille 1 j'aimerais avoir à partir de la cellule B6:
B6= le premier nom du fichier dans ce répertoire (Classeur 1) C6= le montant de la feuille Mois, cellule A1
B7= le deuxième nom du fichier dans ce répertoire (Classeur 2) C6= le montant de la feuille Mois, cellule A1
etc, etc.
Ce que j'aimerais, c'est qu'à chaque fois que j'ajoute un fichier dans ce répertoire, le fichier total se mette à jour
automatiquement.
Est-ce que que quelqu'un peut m'aider.
Merci de votre aide à l'avance
Marc














MichDenis
Le #19383221
> Bonjour Isabelle
Ce code ce place en rouge dans mon éditeur:



*** SVP Isabelle, change de place... tu as assez pris de
soleil pour aujourd'hui, même ton code rougit.
marc
Le #19383211
Isabelle
ça fonctionne. Mais j'ai deux questions.
1. Présentement, le premier fichier s'écrit dans la cellule B6 avec le résultat en B7. Le deuxième nom en C6 et le résultat en C7.
Si je veux : le premier fichier en B6 et son résultat en C6 et le deuxième en B7 et son résultat en C7, que dois je modifier au
code?
2. Après l'avoir exécuté, la macro indique une erreur 400. Est-ce que c'est parce que mon fichier total est dans le même répertoire?

Je sais que cela fait plusieurs fois que je te le dis, mais merci pour ton aide
Marc

"isabelle" a écrit dans le message de news:
bonjour Marc,

remets le sur une seule ligne,

Cells(7, y + 1) = ExecuteExcel4Macro("'" & NomDossier & "[" & File.Name & "]Mois'!R1C1")

isabelle

marc a écrit :
Bonjour Isabelle
Ce code ce place en rouge dans mon éditeur:
Cells(7, y + 1) = ExecuteExcel4Macro("'" & NomDossier & "[" &
File.Name & "]Mois'!R1C1")

Merci de toujours m'aider
Marc

"isabelle" a écrit dans le message de news:

ps/ copie cette macro sur la page code de ThisWorkBook du fichier Total

isabelle

isabelle a écrit :

bonjour Marc,

copie cette macro sur la page code de ThisWorkBook,

Sub Fichier_Total()
Dim fso As Object, Dossier As Object, NomDossier
Dim Files As Object, File As Object, i As Integer
Set fso = CreateObject("Scripting.FileSystemObject")
NomDossier = "c:zaza" '"C:Clientsnuméro11"
Set Dossier = fso.GetFolder(NomDossier)
Set Files = Dossier.Files
If Files.Count <> 0 Then
For Each File In Files
If File.Name <> "Total" Then
y = y + 1
Cells(6, y + 1) = File.Name
Cells(7, y + 1) = ExecuteExcel4Macro("'" & NomDossier & "[" & File.Name & "]Mois'!R1C1")
End If
Next
End If
End Sub

isabelle

marc a écrit :

Bonjour à vous tous.
Voici mon problème:
J'ai un dossier sur le C:Clientsnuméro11
Dans ce dossier, j'ai (présentement) 4 fichiers:
Classeur 1
Classeur 2
Classeur 3
Total

Dans chaque fichier (Classeur 1, 2,et 3) j'ai une feuille qui se nomme Mois
Dans le fichier Total, sur la feuille 1 j'aimerais avoir à partir de la cellule B6:
B6= le premier nom du fichier dans ce répertoire (Classeur 1) C6= le montant de la feuille Mois, cellule A1
B7= le deuxième nom du fichier dans ce répertoire (Classeur 2) C6= le montant de la feuille Mois, cellule A1
etc, etc.
Ce que j'aimerais, c'est qu'à chaque fois que j'ajoute un fichier dans ce répertoire, le fichier total se mette à jour
automatiquement.
Est-ce que que quelqu'un peut m'aider.
Merci de votre aide à l'avance
Marc
















isabelle
Le #19383191
MichDenis a écrit :
Bonjour Isabelle
Ce code ce place en rouge dans mon éditeur:




*** SVP Isabelle, change de place... tu as assez pris de
soleil pour aujourd'hui, même ton code rougit.




ok, je m'en vais voir le vrai galarneau ;-)
isabelle
isabelle
Le #19383421
bonjour Marc,

remplace :

Cells(6, y + 1) = File.Name

Cells(7, y + 1) = ExecuteExcel4Macro("'" & NomDossier & "[" & File.Name & "]Mois'!R1C1")


par :

Range("B" & y + 5) = File.Name
Range("C" & y + 5) = ExecuteExcel4Macro("'" & NomDossier & "[" &
File.Name & "]Mois'!R1C1")


isabelle

marc a écrit :
Isabelle
ça fonctionne. Mais j'ai deux questions.
1. Présentement, le premier fichier s'écrit dans la cellule B6 avec le résultat en B7. Le deuxième nom en C6 et le résultat en C7.
Si je veux : le premier fichier en B6 et son résultat en C6 et le deuxième en B7 et son résultat en C7, que dois je modifier au
code?
2. Après l'avoir exécuté, la macro indique une erreur 400. Est-ce que c'est parce que mon fichier total est dans le même répertoire?

Je sais que cela fait plusieurs fois que je te le dis, mais merci pour ton aide
Marc

"isabelle" a écrit dans le message de news:

bonjour Marc,

remets le sur une seule ligne,

Cells(7, y + 1) = ExecuteExcel4Macro("'" & NomDossier & "[" & File.Name & "]Mois'!R1C1")

isabelle

marc a écrit :

Bonjour Isabelle
Ce code ce place en rouge dans mon éditeur:
Cells(7, y + 1) = ExecuteExcel4Macro("'" & NomDossier & "[" &
File.Name & "]Mois'!R1C1")

Merci de toujours m'aider
Marc

"isabelle" a écrit dans le message de news:


ps/ copie cette macro sur la page code de ThisWorkBook du fichier Total

isabelle

isabelle a écrit :


bonjour Marc,

copie cette macro sur la page code de ThisWorkBook,

Sub Fichier_Total()
Dim fso As Object, Dossier As Object, NomDossier
Dim Files As Object, File As Object, i As Integer
Set fso = CreateObject("Scripting.FileSystemObject")
NomDossier = "c:zaza" '"C:Clientsnuméro11"
Set Dossier = fso.GetFolder(NomDossier)
Set Files = Dossier.Files
If Files.Count <> 0 Then
For Each File In Files
If File.Name <> "Total" Then
y = y + 1
Cells(6, y + 1) = File.Name
Cells(7, y + 1) = ExecuteExcel4Macro("'" & NomDossier & "[" & File.Name & "]Mois'!R1C1")
End If
Next
End If
End Sub

isabelle

marc a écrit :


Bonjour à vous tous.
Voici mon problème:
J'ai un dossier sur le C:Clientsnuméro11
Dans ce dossier, j'ai (présentement) 4 fichiers:
Classeur 1
Classeur 2
Classeur 3
Total

Dans chaque fichier (Classeur 1, 2,et 3) j'ai une feuille qui se nomme Mois
Dans le fichier Total, sur la feuille 1 j'aimerais avoir à partir de la cellule B6:
B6= le premier nom du fichier dans ce répertoire (Classeur 1) C6= le montant de la feuille Mois, cellule A1
B7= le deuxième nom du fichier dans ce répertoire (Classeur 2) C6= le montant de la feuille Mois, cellule A1
etc, etc.
Ce que j'aimerais, c'est qu'à chaque fois que j'ajoute un fichier dans ce répertoire, le fichier total se mette à jour
automatiquement.
Est-ce que que quelqu'un peut m'aider.
Merci de votre aide à l'avance
Marc





















isabelle
Le #19383411
marc a écrit :
Isabelle
ça fonctionne. Mais j'ai deux questions.
1. Présentement, le premier fichier s'écrit dans la cellule B6 avec le résultat en B7. Le deuxième nom en C6 et le résultat en C7.
Si je veux : le premier fichier en B6 et son résultat en C6 et le deuxième en B7 et son résultat en C7, que dois je modifier au
code?
2. Après l'avoir exécuté, la macro indique une erreur 400. Est-ce que c'est parce que mon fichier total est dans le même répertoire?



est ce que tu sais sur quel ligne il se produit l'erreur ? (appuyer sur
debug et noter la ligne en jaune)

isabelle
marc
Le #19383491
Bonjour Isabelle
J'ai mis le fichier "ailleurs" que dans le répertoire et l'erreur est disparu.
Un gros merci pour ton aide, ça fonctionne parfaitement.
Merci et bonne fin de journée
Marc
"isabelle" a écrit dans le message de news: %


marc a écrit :
Isabelle
ça fonctionne. Mais j'ai deux questions.
1. Présentement, le premier fichier s'écrit dans la cellule B6 avec le résultat en B7. Le deuxième nom en C6 et le résultat en
C7.
Si je veux : le premier fichier en B6 et son résultat en C6 et le deuxième en B7 et son résultat en C7, que dois je modifier au
code?
2. Après l'avoir exécuté, la macro indique une erreur 400. Est-ce que c'est parce que mon fichier total est dans le même
répertoire?



est ce que tu sais sur quel ligne il se produit l'erreur ? (appuyer sur debug et noter la ligne en jaune)

isabelle


Publicité
Poster une réponse
Anonyme