IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBA Word Discussion :

Convertir RTF en DOCX


Sujet :

VBA Word

  1. #1
    Candidat au Club
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Mai 2017
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information

    Informations forums :
    Inscription : Mai 2017
    Messages : 4
    Points : 4
    Points
    4
    Par défaut Convertir RTF en DOCX
    Bonjour,
    J'ai besoin de convertir des RTX en DOCX. Très simple pour un par ci par là.
    Mon problème :
    J'ai un dossier exemple COURRIERS dans lequel il y a plusieurs milliers de sous-dossiers contenant des documents RTF créés au fil des années.
    Quand j'ouvre un document RTF sous WORD 2013 et que je l'enregistre en DOCX, c'est parfait. Puis j'ouvre le DOCX, clique sur compatibilité et l'enregistre c'est OK.
    Mon problème est que j'en ai des milliers, 300 000 à 500 000 documents. Donc impossible de faire cela à la main.
    J'ai essayer des convertisseurs par lots mais le résultat est moyen. Seul WORD 2013 me fait un boulot impeccable. Donc leur module de conversion est bien.
    Mon autre problème est que je n'y connais rien au développement. Donc c'est la galère.
    Si quelqu'un a fait un utilitaire, une macro ... ce serait vraiment le top.
    Merci beaucoup.

  2. #2
    Membre actif
    Homme Profil pro
    Programmeur fou
    Inscrit en
    Octobre 2010
    Messages
    339
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations professionnelles :
    Activité : Programmeur fou

    Informations forums :
    Inscription : Octobre 2010
    Messages : 339
    Points : 216
    Points
    216
    Par défaut
    Excuse-moi de répondre peut-être à côté de la question, mais je ne vois pas bien l'intérêt de la manip.
    Si tu souhaites convertir des document .rtf en .docx, c'est que les lecteurs éventuels disposent de Word, donc ils peuvent parfaitement ouvrir des .RTF.
    Où est le problème ?
    Juste curieux.
    Merci.
    à la retraite, occupé à apprendre Blender pour pondre des bagnôles pour FS22 (voir Papocle.fr)

  3. #3
    Membre expert Avatar de QuestVba
    Homme Profil pro
    Enseignant
    Inscrit en
    Juillet 2012
    Messages
    2 477
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : Belgique

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Service public

    Informations forums :
    Inscription : Juillet 2012
    Messages : 2 477
    Points : 3 864
    Points
    3 864
    Par défaut
    Si c'est pour une macro, il existe un forum ad hoc.

    Sinon effectivement voici un code qui devrait fonctionner (il convertit tout un folder) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    Sub ConvertRtfToDocx()
     
        With Application.FileDialog(msoFileDialogFolderPicker)
            .Title = "Select folder..."
            .Show
            myFolder = .SelectedItems.Item(1)
        End With
     
        myWildCard = InputBox(prompt:="Enter wild card...")
     
        myDocs = Dir(myFolder & "\" & myWildCard)
     
        While myDocs <> ""
            Documents.Open FileName:=myFolder & "\" & myDocs, ConfirmConversions:=False
            ActiveDocument.SaveAs2 FileName:=myFolder & "\" & Left(myDocs, Len(myDocs) - 4) & ".docx", _
                FileFormat:=wdFormatDocumentDefault, _
                CompatibilityMode:=wdCurrent
            ActiveDocument.Close SaveChanges:=False
            myDocs = Dir()
        Wend
     
    End Sub

  4. #4
    Candidat au Club
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Mai 2017
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information

    Informations forums :
    Inscription : Mai 2017
    Messages : 4
    Points : 4
    Points
    4
    Par défaut CONVERTIR RTF EN DOCX
    Super merci pour la macro.
    Ca fonctionne super.
    Au début je n'avais pas pigé la Wild Card et en réfléchissant un peu le fait de mette *.rtf c'est ok.
    Il est vrai que dans le dossier j'ai des rtf, pdf, eml ...

    La dernière chose c'est que j'ai un répertoire principal avec plein de sous-dossiers à l'intérieur et que je voudrai tout traiter d'un bloc en donnant le dossier principal de départ.
    C'est sûr qu'il faut que je fasse une boucle, mais comme je ne touche pas du tout un développement ce serait trop cool de me rajouter les ligne de la macro.

    Merci beaucou.


    Citation Envoyé par QuestVba Voir le message
    Si c'est pour une macro, il existe un forum ad hoc.

    Sinon effectivement voici un code qui devrait fonctionner (il convertit tout un folder) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    Sub ConvertRtfToDocx()
     
        With Application.FileDialog(msoFileDialogFolderPicker)
            .Title = "Select folder..."
            .Show
            myFolder = .SelectedItems.Item(1)
        End With
     
        myWildCard = InputBox(prompt:="Enter wild card...")
     
        myDocs = Dir(myFolder & "\" & myWildCard)
     
        While myDocs <> ""
            Documents.Open FileName:=myFolder & "\" & myDocs, ConfirmConversions:=False
            ActiveDocument.SaveAs2 FileName:=myFolder & "\" & Left(myDocs, Len(myDocs) - 4) & ".docx", _
                FileFormat:=wdFormatDocumentDefault, _
                CompatibilityMode:=wdCurrent
            ActiveDocument.Close SaveChanges:=False
            myDocs = Dir()
        Wend
     
    End Sub

Discussions similaires

  1. Convertire RTF en HTML
    Par dot-_-net dans le forum API standards et tierces
    Réponses: 0
    Dernier message: 19/09/2009, 13h49
  2. Convertir rtf ou txt ou doc en html ?
    Par Eldaorn dans le forum Windows Forms
    Réponses: 1
    Dernier message: 08/06/2009, 17h15
  3. [C#][1.1] Convertir RTF/DOC
    Par SmokE dans le forum ASP.NET
    Réponses: 5
    Dernier message: 27/12/2005, 10h43
  4. Convertir rtf en html
    Par the big ben 5 dans le forum Langage
    Réponses: 3
    Dernier message: 09/11/2005, 14h56
  5. convertir rtf en html
    Par busard dans le forum Langage
    Réponses: 2
    Dernier message: 08/02/2003, 12h08

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo