Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1330 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Ouvrir plusieurs fichiers en vba

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Ouvrir plusieurs fichiers en vba

n°2228810
paul25
Posté le 22-05-2014 à 13:16:14  profilanswer
 

Bonjour à tous,
 
Je voudrai créer un programme qui puisse être capable d'aller chercher des infos dans plusieurs classeurs Excel (en fonction d'un n° de semaine choisi) puis, me coller ces infos dans un fichier commun ("MC_Commun" ).
 
Tous les classeurs se trouve dans le même dossier.
 
J'ai réussi avec un 1 fichier (MC_Shootage) mais, je ne sais pas comment gérer avec plusieurs fichiers ? Existe t'il une fonction multiFichier ou qqch comme ça?
 
 Voici mon pgm:
 

Code :
  1. Sub Dechet_Finition_Hebdo()
  2. 'Identification des chemins et des fichiers
  3.     Dim Chemin As String, WbDestination As Workbook, WbSource As Workbook
  4.     Dim Fichier As String
  5.     Dim Semaine As Long, L As Long, x As Long
  6.     Set WbDestination = ThisWorkbook
  7.     L = WbDestination.Worksheets("Donnees" ).Range("A65536" ).End(xlUp).Row + 1
  8.     WbDestination.Worksheets("Donnees" ).Range("A6:N" & L).ClearContents
  9.  
  10.      'Chemin = "X:\30_QUALITE\307_Gestion_de_service\Lyse\AAAA-Main-Courante-Atelier\Recherches pour MC_commun\MC_commun"
  11.     Chemin = ThisWorkbook.Path    'si les 2 fichiers dans même dossier
  12.    
  13.     'demande à l'utilisateur le numéro de semaine, semaine en cours par défaut
  14.     Semaine = InputBox("N° de la semaine", "SEMAINE", DatePart("ww", Date, vbMonday) - 1)
  15.     If Semaine = 0 Then Exit Sub
  16.     Fichier = "MC_Shootage.xlsm"
  17.     If FichierExiste(Chemin & "\" & Fichier) Then
  18.     'ouverture du fichier en lecture seule
  19.         Workbooks.Open Filename:=Chemin & "\" & Fichier, UpdateLinks:=0, ReadOnly:=True
  20.         Set WbSource = ActiveWorkbook
  21.         On Error Resume Next
  22.         x = Application.WorksheetFunction.CountIf(WbSource.Worksheets("Synthese" ).Range("B5:B1000" ), "=" & Semaine)
  23.             If x > 0 Then
  24.         With WbSource.Worksheets("Synthese" )
  25.                 'Transfert des données
  26.                 'exemple pour ajout de ligne(s)
  27.                 For Each cel In .Range("B6:B1000" )
  28.                     If cel = Semaine Then
  29.                         L = WbDestination.Worksheets("Donnees" ).Range("A65536" ).End(xlUp).Row + 1
  30.                          .Range("A" & cel.Row & ":N" & cel.Row).Copy Destination:=WbDestination.Worksheets("Donnees" ).Range("A" & L)
  31.                     End If
  32.                 Next cel
  33.         End With
  34.         WbSource.Close SaveChanges:=False
  35.             Else
  36.         WbSource.Close SaveChanges:=False
  37.             End If
  38.       End If
  39. End Sub
  40. Function FichierExiste(NomFichier As String) As Boolean
  41.     FichierExiste = Dir(NomFichier) <> "" And NomFichier <> ""
  42. End Function


 
 
 Merci à tous ceux qui pourront m'aider!!

mood
Publicité
Posté le 22-05-2014 à 13:16:14  profilanswer
 

n°2228816
Marc L
Posté le 22-05-2014 à 15:10:27  profilanswer
 

 
           Bonjour,
 
           en consultant l'aide VBA de la fonction  Dir  et ses exemples …
 
           Du genre initialiser par  Dir("C:\Dossier\*.xls" )  …
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Ouvrir plusieurs fichiers en vba

 

Sujets relatifs
SUPPRESSION DE FICHIERS PAR LA COMMANDE RMDIR ET RECUVA.Ouvrir page dans fenêtre modale
placer image sur panel depuis menu, plusieurs images, non !!!Rapatrier les infos de plusieurs fichiers dans un classeur excel
Ouvrir l'app concernée sur site mobile ?Ouvrir des fichiers dont le nom est incrémenté avec scilab
Utiliser plusieurs libs graphiques : ne pas perdre de performancesOrganisation des fichiers de la BDD
boucle pour ouvrir plusieurs fichiers en COuvrir plusieurs types de fichiers
Plus de sujets relatifs à : Ouvrir plusieurs fichiers en vba


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR