justedieu
Nouveau membre
Bonjour a tous et a toute,
pour mon stage, je dois passer plein de fichier enregistré au format html office au format html filtré (sans les tags d'office qui alourdissent)
malgré le fait que je suis debutant en Vba et a l'aide d'internet j'ai fais cette macro qui marche
mais le probleme c'est que je dois mettre tous mes fichiers dans un seul dossier. or ils sont tous dans des repertoires particuliers.
je sais qu'il existe des fonction recherches mais j'arrive pas a les excuter.
comment faire pour que ma macro les recherches dans un repertoire et sous-repertoires et les modifies?
Merci d'avance
pour mon stage, je dois passer plein de fichier enregistré au format html office au format html filtré (sans les tags d'office qui alourdissent)
malgré le fait que je suis debutant en Vba et a l'aide d'internet j'ai fais cette macro qui marche
Code:
Public Sub BatchMacro()
' Exécute par lot sur une série de fichiers la convertion html->html filtré
' Version légère pour WD2002+ seulement : utilise le FilePicker
' Anacoluthe pour le MPFW et la FAQ à m@rina
Dim NomMacro As String
Dim vFichier As Variant
Dim RetourDL As Long
Dim NbFichOK As Integer
' 1- Sélection des fichiers
' Le FilePicker permet de sélectionner le répertoire puis dedans
' des fichiers avec Maj ou Ctrl ou tous les fichiers avec Ctrl+A
Dim fd As FileDialog
Set fd = Application.FileDialog(msoFileDialogFolderPicker)
fd.Title = "Sélectionner les fichiers à traiter"
If fd.Show <> -1 Then Exit Sub
If MsgBox(fd.SelectedItems.Count & " documents à traiter ", vbYesNo, _
"continuer ?") = vbNo Then Exit Sub
' 2- Exécution de la macro dans tous les fichiers choisis
' la macro doit agir uniquement sur le document actif et le fermer
For Each vFichier In fd.SelectedItems
On Error GoTo Suivant
Application.Documents.Open FileName:=vFichier, _
AddToRecentFiles:=False, ConfirmConversions:=False, _
Visible:=True
On Error GoTo Fermer
NbFichOK = NbFichOK + 1
Fermer:
On Error GoTo Suivant
ActiveDocument.SaveAs FileName:=vFichier, FileFormat:=wdFormatFilteredHTML, LockComments:=False, Password:="", AddToRecentFiles _
:=True, WritePassword:="", ReadOnlyRecommended:=False, EmbedTrueTypeFonts _
:=False, SaveNativePictureFormat:=False, SaveFormsData:=False, _
SaveAsAOCELetter:=False
ActiveDocument.Close
Suivant:
On Error GoTo 0
Next vFichier
' 4 fin de la BatchMacro
MsgBox ("La macro a été exécutée sur " _
& NbFichOK & " Fichiers")
Set fd = Nothing
End Sub
mais le probleme c'est que je dois mettre tous mes fichiers dans un seul dossier. or ils sont tous dans des repertoires particuliers.
je sais qu'il existe des fonction recherches mais j'arrive pas a les excuter.
comment faire pour que ma macro les recherches dans un repertoire et sous-repertoires et les modifies?
Merci d'avance