Les instructions VBA suivantes ( que j'ai piquées sur ce forum un grand
merci à son auteur)figurant dans un classeur TEST.xls permettent ( si j'ai
bien compris) le balayage des fichiers à extensions xls commençant par toto
du dossier courant
ChDir ThisWorkbook.Path
var = Dir("toto*.xls") ' premier classeur
Do While var<> ""
Workbooks.Open Filename:=var
instructions
Next c
ActiveWorkbook.Close
var= Dir ' classeur suivant
Loop
Ca marche très bien dans le cas où les classeurs à analyser se trouvent dans
un seul dossier .
Mais comment faire s'ils figurent dans plusieurs sous-dossiers ??
par exemple :
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
FFO
Salut Bidou
soit sous C:TOTAUX GENERAUX
les sous dossiers nommés: TOTAUX JANV TOTAUX FEV TOTAUX MARS Etc....
Ce code :
On Error Resume Next For i = 1 To 12 Mois = UCase(Format(Mid(Date, 1, 3) & Format(i, "00") & Mid(Date, 6), "mmmm")) If i = 2 Then Mois = "FEVRIER" End If If Dir("C:TOTAUX GENERAUXTOTAUX " & Mid(Mois, 1, 3) & "", vbDirectory) <> "" Then ChDir ("C:TOTAUX GENERAUXTOTAUX " & Mid(Mois, 1, 3) & "") Else ChDir ("C:TOTAUX GENERAUXTOTAUX " & Mid(Mois, 1, 4) & "") End If Var = Dir("Fichiers*.xls") ' premier classeur Do While Var <> "" Workbooks.Open Filename:=Var Var = Dir ' classeur suivant Loop Next i
j'ai par les lignes :
If Dir("C:TOTAUX GENERAUXTOTAUX " & Mid(Mois, 1, 3) & "", vbDirectory) <> "" Then ChDir ("C:TOTAUX GENERAUXTOTAUX " & Mid(Mois, 1, 3) & "") Else ChDir ("C:TOTAUX GENERAUXTOTAUX " & Mid(Mois, 1, 4) & "") End If
pris en considération le mois du dossier sous forme de 3 lettres comme TOTAUX FEV ou de sous forme de 4 lettres comme TOTAUX JANV
Il va de soit qu'une meilleur harmonisation dans le libellé des mois aurais allégé le code
J'espère que certain mois n'auront pas un nombre de lettres différents
Par les lignes :
If i = 2 Then Mois = "FEVRIER" End If
j'ai traité à part le mois de février qui présente un E commercial avec accent avec la ligne :
Voilà les quelques explications C'est un peu lourd mais efficace
Dis moi !!!
Bonjour,
Les instructions VBA suivantes ( que j'ai piquées sur ce forum un grand merci à son auteur)figurant dans un classeur TEST.xls permettent ( si j'ai bien compris) le balayage des fichiers à extensions xls commençant par toto du dossier courant ChDir ThisWorkbook.Path var = Dir("toto*.xls") ' premier classeur Do While var<> "" Workbooks.Open Filename:=var instructions
Next c ActiveWorkbook.Close var= Dir ' classeur suivant Loop Ca marche très bien dans le cas où les classeurs à analyser se trouvent dans un seul dossier . Mais comment faire s'ils figurent dans plusieurs sous-dossiers ?? par exemple :
les sous dossiers nommés:
TOTAUX JANV
TOTAUX FEV
TOTAUX MARS
Etc....
Ce code :
On Error Resume Next
For i = 1 To 12
Mois = UCase(Format(Mid(Date, 1, 3) & Format(i, "00") & Mid(Date, 6), "mmmm"))
If i = 2 Then
Mois = "FEVRIER"
End If
If Dir("C:TOTAUX GENERAUXTOTAUX " & Mid(Mois, 1, 3) & "", vbDirectory) <>
"" Then
ChDir ("C:TOTAUX GENERAUXTOTAUX " & Mid(Mois, 1, 3) & "")
Else
ChDir ("C:TOTAUX GENERAUXTOTAUX " & Mid(Mois, 1, 4) & "")
End If
Var = Dir("Fichiers*.xls") ' premier classeur
Do While Var <> ""
Workbooks.Open Filename:=Var
Var = Dir ' classeur suivant
Loop
Next i
j'ai par les lignes :
If Dir("C:TOTAUX GENERAUXTOTAUX " & Mid(Mois, 1, 3) & "", vbDirectory) <>
"" Then
ChDir ("C:TOTAUX GENERAUXTOTAUX " & Mid(Mois, 1, 3) & "")
Else
ChDir ("C:TOTAUX GENERAUXTOTAUX " & Mid(Mois, 1, 4) & "")
End If
pris en considération le mois du dossier sous forme de 3 lettres comme
TOTAUX FEV ou de sous forme de 4 lettres comme TOTAUX JANV
Il va de soit qu'une meilleur harmonisation dans le libellé des mois aurais
allégé le code
J'espère que certain mois n'auront pas un nombre de lettres différents
Par les lignes :
If i = 2 Then
Mois = "FEVRIER"
End If
j'ai traité à part le mois de février qui présente un E commercial avec
accent avec la ligne :
Voilà les quelques explications
C'est un peu lourd mais efficace
Dis moi !!!
Bonjour,
Les instructions VBA suivantes ( que j'ai piquées sur ce forum un grand
merci à son auteur)figurant dans un classeur TEST.xls permettent ( si j'ai
bien compris) le balayage des fichiers à extensions xls commençant par toto
du dossier courant
ChDir ThisWorkbook.Path
var = Dir("toto*.xls") ' premier classeur
Do While var<> ""
Workbooks.Open Filename:=var
instructions
Next c
ActiveWorkbook.Close
var= Dir ' classeur suivant
Loop
Ca marche très bien dans le cas où les classeurs à analyser se trouvent dans
un seul dossier .
Mais comment faire s'ils figurent dans plusieurs sous-dossiers ??
par exemple :
les sous dossiers nommés: TOTAUX JANV TOTAUX FEV TOTAUX MARS Etc....
Ce code :
On Error Resume Next For i = 1 To 12 Mois = UCase(Format(Mid(Date, 1, 3) & Format(i, "00") & Mid(Date, 6), "mmmm")) If i = 2 Then Mois = "FEVRIER" End If If Dir("C:TOTAUX GENERAUXTOTAUX " & Mid(Mois, 1, 3) & "", vbDirectory) <> "" Then ChDir ("C:TOTAUX GENERAUXTOTAUX " & Mid(Mois, 1, 3) & "") Else ChDir ("C:TOTAUX GENERAUXTOTAUX " & Mid(Mois, 1, 4) & "") End If Var = Dir("Fichiers*.xls") ' premier classeur Do While Var <> "" Workbooks.Open Filename:=Var Var = Dir ' classeur suivant Loop Next i
j'ai par les lignes :
If Dir("C:TOTAUX GENERAUXTOTAUX " & Mid(Mois, 1, 3) & "", vbDirectory) <> "" Then ChDir ("C:TOTAUX GENERAUXTOTAUX " & Mid(Mois, 1, 3) & "") Else ChDir ("C:TOTAUX GENERAUXTOTAUX " & Mid(Mois, 1, 4) & "") End If
pris en considération le mois du dossier sous forme de 3 lettres comme TOTAUX FEV ou de sous forme de 4 lettres comme TOTAUX JANV
Il va de soit qu'une meilleur harmonisation dans le libellé des mois aurais allégé le code
J'espère que certain mois n'auront pas un nombre de lettres différents
Par les lignes :
If i = 2 Then Mois = "FEVRIER" End If
j'ai traité à part le mois de février qui présente un E commercial avec accent avec la ligne :
Voilà les quelques explications C'est un peu lourd mais efficace
Dis moi !!!
Bonjour,
Les instructions VBA suivantes ( que j'ai piquées sur ce forum un grand merci à son auteur)figurant dans un classeur TEST.xls permettent ( si j'ai bien compris) le balayage des fichiers à extensions xls commençant par toto du dossier courant ChDir ThisWorkbook.Path var = Dir("toto*.xls") ' premier classeur Do While var<> "" Workbooks.Open Filename:=var instructions
Next c ActiveWorkbook.Close var= Dir ' classeur suivant Loop Ca marche très bien dans le cas où les classeurs à analyser se trouvent dans un seul dossier . Mais comment faire s'ils figurent dans plusieurs sous-dossiers ?? par exemple :
Bonjour Je vais intégrer tes lignes dans ma macro et je tiens au courant
merci pour ton aide
"FFO" a écrit dans le message de news:
Salut Bidou
soit sous C:TOTAUX GENERAUX
les sous dossiers nommés: TOTAUX JANV TOTAUX FEV TOTAUX MARS Etc....
Ce code :
On Error Resume Next For i = 1 To 12 Mois = UCase(Format(Mid(Date, 1, 3) & Format(i, "00") & Mid(Date, 6), "mmmm")) If i = 2 Then Mois = "FEVRIER" End If If Dir("C:TOTAUX GENERAUXTOTAUX " & Mid(Mois, 1, 3) & "", vbDirectory) <> "" Then ChDir ("C:TOTAUX GENERAUXTOTAUX " & Mid(Mois, 1, 3) & "") Else ChDir ("C:TOTAUX GENERAUXTOTAUX " & Mid(Mois, 1, 4) & "") End If Var = Dir("Fichiers*.xls") ' premier classeur Do While Var <> "" Workbooks.Open Filename:=Var Var = Dir ' classeur suivant Loop Next i
j'ai par les lignes :
If Dir("C:TOTAUX GENERAUXTOTAUX " & Mid(Mois, 1, 3) & "", vbDirectory) <> "" Then ChDir ("C:TOTAUX GENERAUXTOTAUX " & Mid(Mois, 1, 3) & "") Else ChDir ("C:TOTAUX GENERAUXTOTAUX " & Mid(Mois, 1, 4) & "") End If
pris en considération le mois du dossier sous forme de 3 lettres comme TOTAUX FEV ou de sous forme de 4 lettres comme TOTAUX JANV
Il va de soit qu'une meilleur harmonisation dans le libellé des mois aurais allégé le code
J'espère que certain mois n'auront pas un nombre de lettres différents
Par les lignes :
If i = 2 Then Mois = "FEVRIER" End If
j'ai traité à part le mois de février qui présente un E commercial avec accent avec la ligne :
Voilà les quelques explications C'est un peu lourd mais efficace
Dis moi !!!
Bonjour,
Les instructions VBA suivantes ( que j'ai piquées sur ce forum un grand merci à son auteur)figurant dans un classeur TEST.xls permettent ( si j'ai bien compris) le balayage des fichiers à extensions xls commençant par toto du dossier courant ChDir ThisWorkbook.Path var = Dir("toto*.xls") ' premier classeur Do While var<> "" Workbooks.Open Filename:=var instructions
Next c ActiveWorkbook.Close var= Dir ' classeur suivant Loop Ca marche très bien dans le cas où les classeurs à analyser se trouvent dans un seul dossier . Mais comment faire s'ils figurent dans plusieurs sous-dossiers ?? par exemple :
Bonjour
Je vais intégrer tes lignes dans ma macro et je tiens au courant
merci pour ton aide
"FFO" <FFO@discussions.microsoft.com> a écrit dans le message de news:
4F6EE871-974E-42E5-9241-85707258E702@microsoft.com...
Salut Bidou
soit sous C:TOTAUX GENERAUX
les sous dossiers nommés:
TOTAUX JANV
TOTAUX FEV
TOTAUX MARS
Etc....
Ce code :
On Error Resume Next
For i = 1 To 12
Mois = UCase(Format(Mid(Date, 1, 3) & Format(i, "00") & Mid(Date, 6),
"mmmm"))
If i = 2 Then
Mois = "FEVRIER"
End If
If Dir("C:TOTAUX GENERAUXTOTAUX " & Mid(Mois, 1, 3) & "", vbDirectory)
<>
"" Then
ChDir ("C:TOTAUX GENERAUXTOTAUX " & Mid(Mois, 1, 3) & "")
Else
ChDir ("C:TOTAUX GENERAUXTOTAUX " & Mid(Mois, 1, 4) & "")
End If
Var = Dir("Fichiers*.xls") ' premier classeur
Do While Var <> ""
Workbooks.Open Filename:=Var
Var = Dir ' classeur suivant
Loop
Next i
j'ai par les lignes :
If Dir("C:TOTAUX GENERAUXTOTAUX " & Mid(Mois, 1, 3) & "", vbDirectory)
<>
"" Then
ChDir ("C:TOTAUX GENERAUXTOTAUX " & Mid(Mois, 1, 3) & "")
Else
ChDir ("C:TOTAUX GENERAUXTOTAUX " & Mid(Mois, 1, 4) & "")
End If
pris en considération le mois du dossier sous forme de 3 lettres comme
TOTAUX FEV ou de sous forme de 4 lettres comme TOTAUX JANV
Il va de soit qu'une meilleur harmonisation dans le libellé des mois
aurais
allégé le code
J'espère que certain mois n'auront pas un nombre de lettres différents
Par les lignes :
If i = 2 Then
Mois = "FEVRIER"
End If
j'ai traité à part le mois de février qui présente un E commercial avec
accent avec la ligne :
Voilà les quelques explications
C'est un peu lourd mais efficace
Dis moi !!!
Bonjour,
Les instructions VBA suivantes ( que j'ai piquées sur ce forum un grand
merci à son auteur)figurant dans un classeur TEST.xls permettent ( si
j'ai
bien compris) le balayage des fichiers à extensions xls commençant par
toto
du dossier courant
ChDir ThisWorkbook.Path
var = Dir("toto*.xls") ' premier classeur
Do While var<> ""
Workbooks.Open Filename:=var
instructions
Next c
ActiveWorkbook.Close
var= Dir ' classeur suivant
Loop
Ca marche très bien dans le cas où les classeurs à analyser se trouvent
dans
un seul dossier .
Mais comment faire s'ils figurent dans plusieurs sous-dossiers ??
par exemple :
Bonjour Je vais intégrer tes lignes dans ma macro et je tiens au courant
merci pour ton aide
"FFO" a écrit dans le message de news:
Salut Bidou
soit sous C:TOTAUX GENERAUX
les sous dossiers nommés: TOTAUX JANV TOTAUX FEV TOTAUX MARS Etc....
Ce code :
On Error Resume Next For i = 1 To 12 Mois = UCase(Format(Mid(Date, 1, 3) & Format(i, "00") & Mid(Date, 6), "mmmm")) If i = 2 Then Mois = "FEVRIER" End If If Dir("C:TOTAUX GENERAUXTOTAUX " & Mid(Mois, 1, 3) & "", vbDirectory) <> "" Then ChDir ("C:TOTAUX GENERAUXTOTAUX " & Mid(Mois, 1, 3) & "") Else ChDir ("C:TOTAUX GENERAUXTOTAUX " & Mid(Mois, 1, 4) & "") End If Var = Dir("Fichiers*.xls") ' premier classeur Do While Var <> "" Workbooks.Open Filename:=Var Var = Dir ' classeur suivant Loop Next i
j'ai par les lignes :
If Dir("C:TOTAUX GENERAUXTOTAUX " & Mid(Mois, 1, 3) & "", vbDirectory) <> "" Then ChDir ("C:TOTAUX GENERAUXTOTAUX " & Mid(Mois, 1, 3) & "") Else ChDir ("C:TOTAUX GENERAUXTOTAUX " & Mid(Mois, 1, 4) & "") End If
pris en considération le mois du dossier sous forme de 3 lettres comme TOTAUX FEV ou de sous forme de 4 lettres comme TOTAUX JANV
Il va de soit qu'une meilleur harmonisation dans le libellé des mois aurais allégé le code
J'espère que certain mois n'auront pas un nombre de lettres différents
Par les lignes :
If i = 2 Then Mois = "FEVRIER" End If
j'ai traité à part le mois de février qui présente un E commercial avec accent avec la ligne :
Voilà les quelques explications C'est un peu lourd mais efficace
Dis moi !!!
Bonjour,
Les instructions VBA suivantes ( que j'ai piquées sur ce forum un grand merci à son auteur)figurant dans un classeur TEST.xls permettent ( si j'ai bien compris) le balayage des fichiers à extensions xls commençant par toto du dossier courant ChDir ThisWorkbook.Path var = Dir("toto*.xls") ' premier classeur Do While var<> "" Workbooks.Open Filename:=var instructions
Next c ActiveWorkbook.Close var= Dir ' classeur suivant Loop Ca marche très bien dans le cas où les classeurs à analyser se trouvent dans un seul dossier . Mais comment faire s'ils figurent dans plusieurs sous-dossiers ?? par exemple :