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

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Macro : ouverture de fichiers dans un répertoire

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Macro : ouverture de fichiers dans un répertoire

n°1254802
Chandy
Patapäy
Posté le 28-11-2005 à 17:18:30  profilanswer
 

Salut  :hello:  
 
Je voudrais savoir comment je peux ouvrir tous les fichiers d'une extension donnée situés dans un répertoire donné ( et les sous-rep également ) avec une macro Word, Excel peu importe.
Par la suite je voudrais faire un traitement sur ces fichiers, mais c'est au niveau de la recherche que je peine.
Je suis newbie en macro, et si en plus/à la place d'une réponse vous avez un bon tuto, je suis preneur !
Merci  :)

mood
Publicité
Posté le 28-11-2005 à 17:18:30  profilanswer
 

n°1254834
watashi
La démotivation : JAMAIS !
Posté le 28-11-2005 à 17:57:20  profilanswer
 

Salut Chandy,
 
regarde ce post, il te donne les fonctions sous excel faire apparaitre le nom de tous tes fichiers ici "*.xls" présents dans un dans un répertoire sélectionné par l'utilisateur, il peut fonctionner avec les sous répertoires si tu places un ".SearchSubFolders = True" dans le filesearch.
 
Je ne sais pas si les macros peuvent être identiques entre excel et word mais ça te donnera une base pour faire ta propre macro.
 
Ensuite il te restera à les ouvrir pour les retravailler mais pour ça il faudrait au moins leur extention et le programme pour l'ouverture.


Message édité par watashi le 06-12-2005 à 16:50:30

---------------
Je bidouillle c'est sur... Mais j'essaye de faire en sorte que ça marche ;-)
n°1296363
tipimousse​27
Posté le 01-02-2006 à 14:15:40  profilanswer
 

Salut,
 
J'ai un problème concernant l'ouverture de plusieurs fichiers dans un répertoire. Je voudrais ouvrir tous les fichiers d'un répertoire mais ce répertoire doit pouvoir être choisi par l'utilisateur de mon programme (avec une InputBox par exemple). Je voudrais savoir comment rendre possible le choix du nom du répertoire et l'ouverture de tous les fichiers .xls qu'il contient.
Pour l'ouverture de mes fichiers contenus dans le répertoire choisi, j'ai écrit la macro suivante :  
 
Dim File_Is As String
    File_Is = Dir("M:\Deutschland\*.XLS" )
    Do Until File_Is = ""
        Workbooks.OpenText FileName:="M:\Deutschland\" & File_Is _
        , Origin:=xlWindows, StartRow:=2, DataType:=xlDelimited, TextQualifier _
        :=xlDoubleQuote, ConsecutiveDelimiter:=True, Tab:=True, Semicolon:=False _
        , Comma:=False, Space:=True, Other:=True, OtherChar:="*", FieldInfo:= _
        Array(Array(1, 1), Array(2, 1), Array(3, 2), Array(4, 9), Array(5, 9), Array(6, 9), Array(7 _
        , 9), Array(8, 9), Array(9, 9), Array(10, 9), Array(11, 9), Array(12, 9), Array(13, 9), Array _
        (14, 9), Array(15, 9), Array(16, 9), Array(17, 2), Array(18, 2), Array(19, 9), Array(20, 9), _
        Array(21, 9))
        File_Is = Dir
    Loop
 
Le nom du repertoire mis en rouge doit être le nom choisi par l'utilisateur.
J'espère que mon problème est exprimé clairement. Si vous avez une solution, je suis preneuse.
Merci.

n°1297278
watashi
La démotivation : JAMAIS !
Posté le 02-02-2006 à 12:21:08  profilanswer
 

Salut tipimousse,
Voilà une fonction qui te permet de faire sélectioner un dossier à un utilisateur, la fonction retourne 0 en cas d'annulation et le chemin complet du dossier dans le cas contraire :

Code :
  1. Function ChoixDossier()
  2.      Dim Dossier As FileDialog
  3.      Set Dossier = Application.FileDialog(msoFileDialogFolderPicker)
  4.      With Dossier
  5.           .AllowMultiSelect = False
  6.           .InitialFileName = "C:\"
  7.           .Title = "Choix d'un dossier"
  8.           If .Show = -1 Then ChoixDossier = .SelectedItems(1) & "\" Else ChoixDossier = 0
  9.      End With
  10. End Function


 
si tu as besoin de plus d'information hésites pas :)
@+
 
EDIT : Correction de la fonction (enlever un des 2 allowmultiselect)


Message édité par watashi le 03-02-2006 à 18:33:09

---------------
Je bidouillle c'est sur... Mais j'essaye de faire en sorte que ça marche ;-)
n°1298148
Epena
Posté le 02-02-2006 à 21:38:23  profilanswer
 

Bonjour,
Cette fonction ne fonctionne pas sous Word ou Excel 97 (FileDialog donne une erreur = Type défini par l'utilisateur non défini).
Quels sont les références à ajouter au projet pour que cela fonctionne ?
Merci
 
Epéna

n°1298320
tipimousse​27
Posté le 03-02-2006 à 09:57:38  profilanswer
 

Salut,
 
J'allais poser exactement la même question.
J'aimerais savoir aussi comment je peux récupérer le chemin du répertoire choisir par l'utilisateur pour l'utiliser ensuite dans mon programme.
Merci d'avance
 
Tipimousse27

n°1298786
watashi
La démotivation : JAMAIS !
Posté le 03-02-2006 à 18:29:26  profilanswer
 

Epena a écrit :

Bonjour,
Cette fonction ne fonctionne pas sous Word ou Excel 97 (FileDialog donne une erreur = Type défini par l'utilisateur non défini).
Quels sont les références à ajouter au projet pour que cela fonctionne ?
Merci


salut epena cett fonction je ne sais pas si elle va être accessible avec word ou excel 97 ou 988, j'utilise  excel 2002, je sais qu'elle marche sous 2003, (surement sur 2000 mais j'ai pas eu confirmation).
Les références que j'ai d'ouvertes sont :
Visual Basic For Application
Microsoft excel 10,0 Oject library
OLE Automation
Microsoft Office 10,0 Object library
 
Les versions excel étant rarement données ... difficile de faire mieux.
 

tipimousse27 a écrit :

Salut,
 
J'allais poser exactement la même question.
J'aimerais savoir aussi comment je peux récupérer le chemin du répertoire choisir par l'utilisateur pour l'utiliser ensuite dans mon programme.
Merci d'avance
 
Tipimousse27


Pour lancer une fonction comme ceele-ci sans argment :
Tu place la fonction dans ton module et dans la macro ou tu as besoin de cette fonction tu marques par exemple :
MonDossier = ChoixDossier
 
@+
 


---------------
Je bidouillle c'est sur... Mais j'essaye de faire en sorte que ça marche ;-)
n°1298881
Epena
Posté le 03-02-2006 à 21:36:29  profilanswer
 

Merci Watashi pour ta réponse. Donc, cela ne fonctionnera pas.  
 
Epéna

n°1301027
tipimousse​27
Posté le 08-02-2006 à 10:33:18  profilanswer
 

Merci Watashi!
Comme je travaille aussi avec Excel 97, ca ne marchera pas pour moi non plus.
Je vais essayer de fonctionner d une maniere.
Encore merci!

n°1301494
watashi
La démotivation : JAMAIS !
Posté le 08-02-2006 à 18:01:06  profilanswer
 

Ben vi ! Ne pas marquer sa version d'excel ... c'est risquer d'obtenir des codes incompatibles surtout en 97 ;)
 
bon courage :)


---------------
Je bidouillle c'est sur... Mais j'essaye de faire en sorte que ça marche ;-)

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

  Macro : ouverture de fichiers dans un répertoire

 

Sujets relatifs
[PHP] Empecher l'accès direct à un sous répertoire d'un site[TCP] Perte de donnée lors d'un transfert de fichiers
[PHP] Lister le contenu d'un repertoire en faisant des liens[resolu][Excel] Macro creation graphique en fonction de feuille selectionée
[VBA-EXCEL 2003] SaveCopyAs mais sans le code VBA ou macroEnregistrer automatiquement des fichiers téléchargés
[VBS - RESOLU] Recherche recursive de fichiers avec caracteres généric[VBA] Accéder à un formulaire access via une macro sous excel
VBA Excel : gestion de fichiers .xls[Résolu] (DOS) Parcourir arboresence et modifier noms fichiers
Plus de sujets relatifs à : Macro : ouverture de fichiers dans un répertoire


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