OVH Cloud OVH Cloud

Ouvrir 20 classeurs en même temps ?

6 réponses
Avatar
fa
Bonjour,

Cet exemple ( trouvé dans l'aide de Excel) permet de fermer tous les
classeurs ouverts à l'exception du classeur actif

For Each w In Workbooks

If w.Name <> ThisWorkbook.Name Then

w.Close savechanges:=True

End If

Next w

Mais y a t-il un moyen pour ouvrir tous les classeurs xls d'un répertoire
déterminé par ex dans le répertoire c:\classeurs j'ai 20 classeurs
(fich1.xls ; fich2.xls ; fich3.xls etc etc )que je voudrais ouvrir en même
temps.J'ai essayé avec workbooks.open("1","2","3") mais évidemment çà marche
pas !

merci pour votre aide

6 réponses

Avatar
Daniel
Bonjour.
Ils sont ouverts les uns derrière les autres :

Sub test()
Dim Chemin As String, Fichier As String
Chemin = "c:Classeurs"
Fichier = Dir(Chemin & "*.xls")
Do While Fichier <> ""
Workbooks.Open Chemin & Fichier
Fichier = Dir
Loop
End Sub

Cordialement.
Daniel
"fa" a écrit dans le message de news:
45a9ffec$0$25955$
Bonjour,

Cet exemple ( trouvé dans l'aide de Excel) permet de fermer tous les
classeurs ouverts à l'exception du classeur actif

For Each w In Workbooks

If w.Name <> ThisWorkbook.Name Then

w.Close savechanges:=True

End If

Next w

Mais y a t-il un moyen pour ouvrir tous les classeurs xls d'un
répertoire déterminé par ex dans le répertoire c:classeurs j'ai 20
classeurs (fich1.xls ; fich2.xls ; fich3.xls etc etc )que je voudrais
ouvrir en même temps.J'ai essayé avec workbooks.open("1","2","3") mais
évidemment çà marche pas !

merci pour votre aide




Avatar
JièL
Bonjoir(c) fa

Le 14/01/2007 11:03 vous avez écrit ceci :
Bonjour,

Mais y a t-il un moyen pour ouvrir tous les classeurs xls d'un répertoire
déterminé par ex dans le répertoire c:classeurs j'ai 20 classeurs
(fich1.xls ; fich2.xls ; fich3.xls etc etc )que je voudrais ouvrir en même
temps.J'ai essayé avec workbooks.open("1","2","3") mais évidemment çà marche
pas !


Sans macro :
1ère solution : menu Fichier, Ouvrir, clic sur le 1er, maintenir Maj et
clic sur le dernier ou Ctrl et clic sur chaque, terminer par Ouvrir

2ème solution : ouvrir une première fois tous les classeurs (voir la 1ère
méthode :-D), menu Fichier, Enregistrer l'espace de travail, nommer et
Enregistrer. Par la suite, pour ouvrir tout les classeurs il suffit
d'ouvrir l'espace de travail .xlw. Les classeurs restent ouvrable seuls

merci pour votre aide


--
JièL / Jean-Louis GOUBERT - Bonne année 2007
Là bas mieux qu'en face ;-) http://forums.offices.free.fr/
La FAQ Outlook est là : http://faq.outlook.free.fr/
Les stats de CDO : http://faq.outlook.free.fr/cdo/

Avatar
fa
Bonjour

Merci Jièl et Daniel pour votre aide


"fa" a écrit dans le message de news:
45a9ffec$0$25955$
Bonjour,

Cet exemple ( trouvé dans l'aide de Excel) permet de fermer tous les
classeurs ouverts à l'exception du classeur actif

For Each w In Workbooks

If w.Name <> ThisWorkbook.Name Then

w.Close savechanges:=True

End If

Next w

Mais y a t-il un moyen pour ouvrir tous les classeurs xls d'un
répertoire déterminé par ex dans le répertoire c:classeurs j'ai 20
classeurs (fich1.xls ; fich2.xls ; fich3.xls etc etc )que je voudrais
ouvrir en même temps.J'ai essayé avec workbooks.open("1","2","3") mais
évidemment çà marche pas !

merci pour votre aide




Avatar
Fredo P.
En+ je n'avais pas essayé, ça fonctionne sur sûr Excel97!, >Fichier>
Enregistrer un environnement
sur le bureau avec un nom différent ex:"Ensemble",quand tous les classeur
sont ouverts. L'icône est différent.
--
'Ôtez toutes voyelles avant l'@
http://frdpst.9online.fr
"fa" a écrit dans le message de news:
45aa2ac6$0$5082$
Bonjour

Merci Jièl et Daniel pour votre aide


"fa" a écrit dans le message de news:
45a9ffec$0$25955$
Bonjour,

Cet exemple ( trouvé dans l'aide de Excel) permet de fermer tous les
classeurs ouverts à l'exception du classeur actif

For Each w In Workbooks

If w.Name <> ThisWorkbook.Name Then

w.Close savechanges:=True

End If

Next w

Mais y a t-il un moyen pour ouvrir tous les classeurs xls d'un
répertoire déterminé par ex dans le répertoire c:classeurs j'ai 20
classeurs (fich1.xls ; fich2.xls ; fich3.xls etc etc )que je voudrais
ouvrir en même temps.J'ai essayé avec workbooks.open("1","2","3") mais
évidemment çà marche pas !

merci pour votre aide








Avatar
fa
Bonsoir

...Mais pour recopier toutes les données de la Feuil1 de chacun de ces
classeurs ouverts par la macro suivante ( de Daniel)

Sub test()
Dim Chemin As String, Fichier As String
Chemin = "c:Classeurs"
Fichier = Dir(Chemin & "*.xls")
Do While Fichier <> ""
Workbooks.Open Chemin & Fichier
Fichier = Dir
Loop
End Sub

dans un autre classeur par exemple Recap.xls ( qui se trouve dans le même
répertoire ) ?

Merci de votre aide

"fa" a écrit dans le message de news:
45a9ffec$0$25955$
Bonjour,

Cet exemple ( trouvé dans l'aide de Excel) permet de fermer tous les
classeurs ouverts à l'exception du classeur actif

For Each w In Workbooks

If w.Name <> ThisWorkbook.Name Then

w.Close savechanges:=True

End If

Next w

Mais y a t-il un moyen pour ouvrir tous les classeurs xls d'un
répertoire déterminé par ex dans le répertoire c:classeurs j'ai 20
classeurs (fich1.xls ; fich2.xls ; fich3.xls etc etc )que je voudrais
ouvrir en même temps.J'ai essayé avec workbooks.open("1","2","3") mais
évidemment çà marche pas !

merci pour votre aide




Avatar
Daniel
Bonsoir.
Essaie (non testé) la macro suppose que le classeur est ouvert et actif au
lancemment de la macro :

Sub test()
Dim Chemin As String, Fichier As String
Dim Ligne As Long
Chemin = "e:donneesdanielmpfe"
Fichier = Dir(Chemin & "*.xls")
Ligne = 1
Do While Fichier <> ""
If Fichier <> "Recap.xls" Then
Workbooks.Open Chemin & Fichier
ActiveWorkbook.ActiveSheet.UsedRange.Copy
Workbooks("Recap.xls").ActiveSheet.Range("A" &
Ligne).PasteSpecial xlValues
Ligne = Ligne + ActiveSheet.UsedRange.Rows.Count
ActiveWorkbook.Close False
End If
Fichier = Dir
Loop
End Sub

Daniel
"fa" a écrit dans le message de news:
45aa7b33$0$5102$
Bonsoir

...Mais pour recopier toutes les données de la Feuil1 de chacun de ces
classeurs ouverts par la macro suivante ( de Daniel)

Sub test()
Dim Chemin As String, Fichier As String
Chemin = "c:Classeurs"
Fichier = Dir(Chemin & "*.xls")
Do While Fichier <> ""
Workbooks.Open Chemin & Fichier
Fichier = Dir
Loop
End Sub

dans un autre classeur par exemple Recap.xls ( qui se trouve dans le même
répertoire ) ?

Merci de votre aide

"fa" a écrit dans le message de news:
45a9ffec$0$25955$
Bonjour,

Cet exemple ( trouvé dans l'aide de Excel) permet de fermer tous les
classeurs ouverts à l'exception du classeur actif

For Each w In Workbooks

If w.Name <> ThisWorkbook.Name Then

w.Close savechanges:=True

End If

Next w

Mais y a t-il un moyen pour ouvrir tous les classeurs xls d'un
répertoire déterminé par ex dans le répertoire c:classeurs j'ai 20
classeurs (fich1.xls ; fich2.xls ; fich3.xls etc etc )que je voudrais
ouvrir en même temps.J'ai essayé avec workbooks.open("1","2","3") mais
évidemment çà marche pas !

merci pour votre aide