Ouverture de plusieurs fichiers txt et csv dans plusieurs feuilles d'un même cla
nix31
Messages postés3Date d'inscriptionlundi 1 janvier 2007StatutMembreDernière intervention26 février 2009
-
25 févr. 2009 à 17:53
nix31
Messages postés3Date d'inscriptionlundi 1 janvier 2007StatutMembreDernière intervention26 février 2009
-
26 févr. 2009 à 13:00
Bonjour à tous,
Etant débutant j'ai regardé les différents postes (j'ai même fais des recherches sur Goo...le) mais je n'ai pas pu trouver comment ouvrir plusieurs fichiers (une dizaine...) dans plusieurs feuilles Excel d'un même classeur, en VBA (si quelqu'un peut répondre en vbscript et ou vb).
Pour le moment j'arrive à ouvrir un fichier dans Excel (en vbs et en vba) (rien de trés compliqué dirons les pro, mais pour moi c'est déjà une belle victoir)
CODE
Dim appxl
Set appXl = CreateObject("Excel.Application")
'Nom du fichier à ouvrir, ici "resultat.txt"
appXl.Workbooks.Open("D:\SCRIPTS\Fichiers\resultat.txt")
appXl.Visible = True
appXl.Application.EnableEvents = True
'Pour lancer une macro à partir du script, ajouter le chemin ou se trouve la macro
'appXl.run "mamacro"
appXl.Save "D:\SCRIPTS\Fichiers\test1.xls"
appXl.Application.EnableEvents = False
'Pour quitter l'appli enlever le commentaire de la ligne en dessous
'appXl.Quit
Set appXl = Nothing
Alors si quelqu'un peut m'aider ce serait cool.
Je résume mon problème, j'aimerais "juste" ouvrir plusieurs fichiers dans plusieurs onglet d'un classeur Excel.
Merci
Debutant, tous l'ont été mais beaucoup l'ont oubliés...
A voir également:
Ouverture de plusieurs fichiers txt et csv dans plusieurs feuilles d'un même cla
cnt
Messages postés219Date d'inscriptionlundi 21 novembre 2005StatutMembreDernière intervention20 décembre 20101 25 févr. 2009 à 19:51
Bonsoir
Je te soumets un exemple que j'avais créer pour ouvrir un seul fichier "CSV", après l'ouverture celui-ci était copié dans le classeur actif, et refermé sans message de sauvegarde à la fermeture du classeur recevant ce dit fichier "CSV"
'-------- Ouverture du nouveau fichier de données -------------
Workbooks.Open fichieraouvrir, 0, True
Application.AskToUpdateLinks = False
ActiveSheet.Copy before:=Workbooks(ClasseurActif).Sheets(1)
ActiveWorkbook.ActiveSheet.Name = "Feuil1" ou NomFeuilles(i)
ActiveWorkbook.ActiveSheet.Visible = False
Workbooks(fich).Close False
Avec un bouclage sur le nombre de fichiers, cela devrait suffire
J'espère avoir été clair.
Salut
CNTJC
nix31
Messages postés3Date d'inscriptionlundi 1 janvier 2007StatutMembreDernière intervention26 février 2009 25 févr. 2009 à 23:49
Merci pour la piste.
Je pensais bien qu'il fallait une boucle, le problème c'est que je ne sais pas "attaqué" le 2eme feuille d'Excel. Lors de mes essai cela m'ouvrait les fichiers dans un autre classeur, est c'est bien la le problème.
Debutant, tous l'ont été mais beaucoup l'ont oubliés...
cnt
Messages postés219Date d'inscriptionlundi 21 novembre 2005StatutMembreDernière intervention20 décembre 20101 26 févr. 2009 à 11:03
Bonjour
Je te propose cette version de copie de fichiers "CSV" dans un classeur d'accueil, à toi de l'adapter pour tes besoins.
Sub CopieCSV()
Dim FichieraOuvrir As String, Fichier As String, monNom As String, Chemin As String
Dim TB_Fichiers() As String, i As Byte
'Mise en tableau des noms des fichiers "CSV"
ReDim TB_Fichiers(1 To 2)
TB_Fichiers(1) = "Fichier1.csv"
TB_Fichiers(2) = "Fichier2.csv"
Application.AskToUpdateLinks = False
With ActiveWorkbook
Chemin = .Path 'Chemin fichier d'accueil
monNom = .Name 'Nom fichier d'accueil
End With
' Bouclage sur le nombre de fichiers "CSV"
For i = 1 To UBound(TB_Fichiers)
Fichier = TB_Fichiers(i)
FichieraOuvrir = Chemin & "" & Fichier
Workbooks.Open FichieraOuvrir, 0, True
ActiveSheet.Copy before:=Workbooks(monNom).Sheets(1)
ActiveWorkbook.ActiveSheet.Name = "Feuil" & CStr(i)
Workbooks(Fichier).Close False
Next i
'
End Sub
Voila de quoi alimenter la machine.
Bonne journée.