Macro sur plusieurs fichiers texte

vibos

XLDnaute Nouveau
Bonjour,

J’ai plein de fichier texte que je traite avec une macro Word pour les transformer en fichier .txt avec séparateur « ; »

-J’aimerai qu’Excel applique ma macro « EpurerTexte » à tous les fichiers .txt d’un répertoire (pour l’instant je dois l’exécuter pour chaque fichier).

-Ensuite il faudrait qu’Excel convertisse les fichiers .txt (avec séparateurs « ; ») en format Excel (xls ou xlsx ou xlsm).

-Et enfin qu’il copie :
Code:
=RECHERCHEV(A1;'[Copie de population francaise ensemble.xls]Communes'!$G$9:$J$36731;4;FAUX)
Dans les colonnes C1 et E1 en incrémentant

Code:
=PRODUIT(B1:C1)
dans la colonne D1 en incrémentant

Code:
=SOMME.SI(D:D;">1")
dans la colonne F sans incrémenté

Jusqu’a maintenant je copiai les cellules puis je double cliquait sur le carré en bas à droite des cellules pour étendre le calcul (incrémenté)


Merci et n’hésitez pas à demander si ce n’est pas clair.
 

vibos

XLDnaute Nouveau
Re : Macro sur plusieurs fichiers texte

Bonjour et merci mromain,

Code:
Sub EpurerTexte
    With Selection.Find
        .Text = "^pPhrase récurrente de début^p"
        .Replacement.Text = ""
        .Forward = True
        .Wrap = wdFindContinue
        .Format = False
        .MatchCase = False
        .MatchWholeWord = False
        .MatchWildcards = False
        .MatchSoundsLike = False
        .MatchAllWordForms = False
    End With
    Selection.Find.Execute
    If Selection.Find.Found Then
        Selection.HomeKey Unit:=wdStory
        Selection.Extend
        Selection.Find.Execute
        While Selection.Find.Found
            Selection.Delete Unit:=wdCharacter, Count:=1
            Selection.Find.ClearFormatting
            With Selection.Find
                .Text = "^pPhrase récurrente de fin^p"
                .Replacement.Text = ""
                .Forward = True
                .Wrap = wdFindContinue
                .Format = False
                .MatchCase = False
                .MatchWholeWord = False
                .MatchWildcards = False
                .MatchSoundsLike = False
                .MatchAllWordForms = False
            End With
            Selection.Find.Execute
            Selection.Delete Unit:=wdCharacter, Count:=1
            
            With Selection.Find
                .Text = "^pPhrase récurrente de début^p"
                .Replacement.Text = ""
                .Forward = True
                .Wrap = wdFindContinue
                .Format = False
                .MatchCase = False
                .MatchWholeWord = False
                .MatchWildcards = False
                .MatchSoundsLike = False
                .MatchAllWordForms = False
            End With
            Selection.Extend
            Selection.Find.Execute
        Wend
        
        Selection.EndKey
        Selection.Delete Unit:=wdCharacter, Count:=1
    End If
End Sub


Voila la macro (elle n'est pas complète j'ai rajouté d'autre remplacement que je pourrais remettre plus tard)
 

mromain

XLDnaute Barbatruc
Re : Macro sur plusieurs fichiers texte

re bonjour vubos,

pour la première étape (exécuter la macro "EpurerTexte"), désolé, mais je ne connais pas grand chose aux macros Word ...
par contre, je t'ai fait une macro excel pour importer et enregistrer les fichiers textes d'un dossier.
il reste à insérer les formules que tu veux dans la macro.

a+
 

Pièces jointes

  • Classeur1.zip
    20.6 KB · Affichages: 42
  • Classeur1.zip
    20.6 KB · Affichages: 37
  • Classeur1.zip
    20.6 KB · Affichages: 43

vibos

XLDnaute Nouveau
Re : Macro sur plusieurs fichiers texte

Arf ça marche pas car ma macro word transforme " : " en ";"
Mais c'est pas grave je vais demander de l'aide pour executer ma macro word sur un dossier puis j'utiliserais ta macro une fois les fichiers texte formater :rolleyes:
 

Discussions similaires

Statistiques des forums

Discussions
312 685
Messages
2 090 947
Membres
104 705
dernier inscrit
Mike72