Thema Datum  Von Nutzer Rating
Antwort
Rot Alle WORD-Dokumente aus allen Verzeichnissen konvertieren
27.08.2016 14:20:31 Fred-Feuerstein
NotSolved
27.08.2016 15:16:44 Gast89856
Solved
28.08.2016 15:34:44 Fred-Feuerstein
NotSolved
28.08.2016 17:01:58 Gast39761
NotSolved
30.08.2016 13:08:43 fred-feuerstein
NotSolved
28.08.2016 17:59:17 Gast30063
NotSolved
29.08.2016 15:18:55 Fred-Feuerstein
NotSolved
29.08.2016 20:38:36 Gast36946
NotSolved
30.08.2016 07:56:46 Gast98180
NotSolved

Ansicht des Beitrags:
Von:
Fred-Feuerstein
Datum:
27.08.2016 14:20:31
Views:
1306
Rating: Antwort:
  Ja
Thema:
Alle WORD-Dokumente aus allen Verzeichnissen konvertieren

Hallo & guten Tag, ich habe folgendes Problem, das vermutlich viele andere Nutzer auch haben oder hatten.

Vielleicht hat da jemand eine Lösung gefunden, die mir helfen könnte.?

Ich bin auf der Suche nach einer Möglichkeit, alle *.doc einer Partition und deren Verzeichnissen / Unterverzeichnissen der Reihe nach in Office 2013-Format umzustellen/zu konvertieren, ohne das einzeln für jede Datei manuell machen zu müssen.

Dass dabei einzelne Formatierungen, Grafiken etc. oder evtl. auch Dokument-Teile verlorengehen können, nehme ich in Kauf, das kann ich später manuell beheben.

Das Problem besteht in gleicher Form auch für Excel und Powerpoint, aber da ist das für mich nicht so wichtig, weil ich da nur wenige Dateien habe.

Auf meiner D:\Partition habe ich viele *.doc-Dokumente (die stammen zum Teil noch aus Word97, Word2000 usw.) sowohl im Rootverzeichnis D:\ als auch in vielen anderen Verzeichnissen und Unterverzeichnissen usw.

Allen Verzeichnissen befinden sich auch Dateien vom Typ *.pdf, *.jpg, *.gif, *.tif usw., aber alles wild durcheinander.

Alles was also nicht *.doc ist, muss überlesen werden.

Alle diese *.doc habe ich natürlich auf eine DVD gesichert für den Fall, dass die Sammelkonvertierung schiefgeht.

Das Problem könnte z.B. durch ein entsprechendes Tool oder einen VBA-Makro gelöst werden.

Der Ablauf in einem Tool oder einem VBA-Makro könnte so aussehen:

  • Word2013 starten
  • Gehe ins Rootsegment D:\
  • A: Finde die nächste *.doc
  • *.doc-Datei öffnen
  • *.doc-Datei speichern unter *.docx,
  • Konvertierung bestätigen
  • Weitere *.doc im gleichen Verzeichnis vorhanden?
  • ja ->> gehe zu A:
  • nein: >> weiteres Verzeichnis vorhanden?
  • Ja >>öffne weiteres Verzeichnis und gehe zu A:
  • Nein>> Ende

 

Meinen letzten VBA-Makro habe ich 2003 geschrieben, danach brauchte ich das nicht mehr selbst zu tun, sondern es wurde von einem unserer VBA-Spezi’s erledigt.

Ein mitfühlender Mensch namens HUBERT hat mir mal in einem Word-Forum einen Makro geschenkt (Code siehe unten), mit dem ich mit allen *.doc eines Verzeichnisses die gleiche Operation durchführen kann.

Das wäre vom Prinzip her das, was ich benötige, aber ich schaffe es nicht, den Makro anzupassen.

Ich selbst kriege das jetzt nicht mehr auf die Reihe und suche nach einem entsprechenden Tool.

Hat da jemand einen Tipp für mich?

Danke

Fred

Code:

' Folgendes Makro öffnet nacheinander alle Dokumente im angegebenen Verzeichnis,
' führt die gewünschten Befehle, die man z.B. mit dem Makrorecorder erfasst hat aus
' speichert und schließt die Dokumente wieder;
' (Obwohl das Makro läuft wie 'ne Rolle Keks solltest Du Dir natürlich vorsichtshalber eine
' Sicherungskopie Deines Verzeichnisses anlegen.und erst mal nen Testlauf durchführen.)
'
Public Sub GleicheOperationmitallenDateieneinesVerzeichnissesdurchführen() ' Rumpfmakroteil, nicht verändern !!!
Dim i                                                                      ' Rumpfmakroteil, nicht verändern !!!
Dim Verzeichnis                                                            ' Rumpfmakroteil, nicht verändern !!!
'==========================================
Verzeichnis = "D:\wordarea"                 ' ( <- hier unbedingt das richtige Verzeichnis angeben)
'==========================================
With Application.FileSearch                                                ' Rumpfmakroteil, nicht verändern !!!
    .FileName = "*.doc"                                                    ' Rumpfmakroteil, nicht verändern !!!
    .LookIn = Verzeichnis                                                  ' Rumpfmakroteil, nicht verändern !!!
    If .Execute > 0 Then                                                   ' Rumpfmakroteil, nicht verändern !!!
    For i = 1 To .FoundFiles.Count                                         ' Rumpfmakroteil, nicht verändern !!!
    Documents.Open .FoundFiles(i)                                          ' Rumpfmakroteil, nicht verändern !!!
    '***************************************************************************************************
    '***************************************************************************************************
    '  erst ab hier Änderungen durchführen, oberer Teil gehört zum Rumpfmakro ohne den nichts läuft
    '----------------
    ' gewünschte Befehle, zum Beispiel: Befehle aus Makrorecorder kopiert hier einfügen
    ' nicht vergessen, jeden einzelnen Fall zu beschreiben (Hochkomma davor ist Kommentarkennzeichen)
    ' Dabei sollte jeder einmal richtig ausgeführte Fall als Kommentar zur Reaktivierung erhalten bleiben,
    ' am besten jeder Fall durch Doppelstriche gekennzeichnet und mit Fall-Nr.XX-Anfang
    ' und Fall-Nr. XX-Ende gezeichnet sein
    '----------------
        '==============Fall 01 Anfang=====================
        ' markiert jeweils den gesamten Text,
        ' Selection.WholeStory 'alles markieren
        
        ' ändert die Schriftart Arial und Schriftgröße 11 auf 12,
        ' With Selection.Font
          '      .Name = "Arial"
          '      .Size = 11
          '  End With
        ' Selection.Style = ActiveDocument.Styles("Standard")
        ' Selection.Font.Name = "Arial"
        ' Selection.Font.Name = "Arial"
        ' Selection.Font.Size = 12
        '==============Fall 01 Ende=====================
        
        '==============Fall 02 Anfang=====================
        ' Ersetze in allen Dokumenten des Verzeichnisses das Wort Standart durch Standard
        '
        'Selection.Find.ClearFormatting
        'Selection.Find.Replacement.ClearFormatting
    'With Selection.Find
        '.Text = "Standart"
        '.Replacement.Text = "Standard"
        '.Forward = True
        '.Wrap = wdFindContinue
        '.Format = False
        '.MatchCase = False
        '.MatchWholeWord = False
        '.MatchWildcards = False
        '.MatchSoundsLike = False
        '.MatchAllWordForms = False
    'End With
    'Selection.Find.Execute Replace:=wdReplaceAll
        '
           '==============Fall 02 Ende=====================
    '
            '==============Fall 03 Anfang=====================
' Der ersten Zeile jedes Dokuments wird das Format Überchrift 1 zugewiesen, die Datei wird
' gespeichert, mit Makro AlleKopfundfusszeilenlöschen wird bereinigt
    'Selection.Find.Execute Replace:=wdReplaceAll
    'Selection.HomeKey Unit:=wdStory
    'Selection.EndKey Unit:=wdLine, Extend:=wdExtend
    'Selection.Style = ActiveDocument.Styles("Überschrift 1")
    'ActiveDocument.Save
    'Application.Run MacroName:="AlleKopfundFusszeilenLoeschen"
    'Selection.Find.ClearFormatting
    'Selection.Find.Replacement.ClearFormatting
    'With Selection.Find
     '   .Text = "^b"
     '   .Replacement.Text = ""
     '   .Forward = True
     '   .Wrap = wdFindContinue
     '   .Format = False
     '   .MatchCase = False
     '   .MatchWholeWord = False
     '   .MatchWildcards = False
     '   .MatchSoundsLike = False
     '   .MatchAllWordForms = False
    'End With
    
    'CommandBars("Stop Recording").Visible = FalseSelection.HomeKey Unit:=wdStory
    'Selection.EndKey Unit:=wdLine, Extend:=wdExtend
    'Selection.Style = ActiveDocument.Styles("Überschrift 1")
    'ActiveDocument.Save
            '==============Fall 03 Ende=====================
 
            '==============Fall 04 Anfang=====================
            'Allen Dokumenten die Sprache Deutsch zuweisen
    'Selection.WholeStory
    'Selection.LanguageID = wdGerman
    'Application.CheckLanguage = False
            '==============Fall 04 Ende=====================
            '==============Fall 05 Anfang=====================
         With Options
        .AllowFastSave = False
        .BackgroundSave = True
        .CreateBackup = True
        .SavePropertiesPrompt = False
        .SaveInterval = 5
        .SaveNormalPrompt = True
        .OptimizeForWord97byDefault = False
    End With
    With ActiveDocument
        .ReadOnlyRecommended = False
        .EmbedTrueTypeFonts = False
        .SaveFormsData = False
        .SaveSubsetFonts = False
        .Password = ""
        .WritePassword = ""
        .OptimizeForWord97 = False
    End With
    Application.DefaultSaveFormat = ""
    ChangeFileOpenDirectory "D:\workarea\"
    Selection.InsertFile FileName:="Titelblatt.doc", Range:="", _
        ConfirmConversions:=False, Link:=False, Attachment:=False
    Selection.InsertBreak Type:=wdSectionBreakNextPage
    With Options
        .AllowFastSave = False
        .BackgroundSave = True
        .CreateBackup = True
        .SavePropertiesPrompt = True
        .SaveInterval = 5
        .SaveNormalPrompt = True
        .OptimizeForWord97byDefault = False
    End With
    With ActiveDocument
        .ReadOnlyRecommended = False
        .EmbedTrueTypeFonts = False
        .SaveFormsData = False
        .SaveSubsetFonts = False
        .Password = ""
        .WritePassword = ""
        .OptimizeForWord97 = False
    End With
    Application.DefaultSaveFormat = ""
       
            '==============Fall 05 Ende=====================

'***************************************************************************************************
'

  '***************************************************************************************************
    ' ab hier keine Änderung mehr durchführen, gehört zum Rumpfmakro
    ' speichert und schließt die Dokumente wieder;
    ' ===================================================================================================
    ActiveDocument.Close SaveChanges:=wdSaveChanges              ' Rumpfmakroteil, nicht verändern !!!
    Next i                                                       ' Rumpfmakroteil, nicht verändern !!!
    End If                                                       ' Rumpfmakroteil, nicht verändern !!!
End With                                                         ' Rumpfmakroteil, nicht verändern !!!
End Sub                                                          ' Rumpfmakroteil, nicht verändern !!!

Hier der

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:

 
 

  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
Rot Alle WORD-Dokumente aus allen Verzeichnissen konvertieren
27.08.2016 14:20:31 Fred-Feuerstein
NotSolved
27.08.2016 15:16:44 Gast89856
Solved
28.08.2016 15:34:44 Fred-Feuerstein
NotSolved
28.08.2016 17:01:58 Gast39761
NotSolved
30.08.2016 13:08:43 fred-feuerstein
NotSolved
28.08.2016 17:59:17 Gast30063
NotSolved
29.08.2016 15:18:55 Fred-Feuerstein
NotSolved
29.08.2016 20:38:36 Gast36946
NotSolved
30.08.2016 07:56:46 Gast98180
NotSolved