2017-12-14 4 views
0

Mein Szenario ist, dass ich Schriftgröße des Inhalts Körper ohne Titel, Überschriften, Unterüberschriften, TOC mit VBA-Makro einfach ändern möchte die Schriftart eigentlichen Inhalt Körper mit Makro bedeutet ändern (Normale Stil tatsächlichen Inhalt angewendet)Wie ändert man die Schriftgröße ohne Überschriften, Unterüberschriften, Inhaltsverzeichnis, Titel mit VBA-Makro in Word-Dokument

Hier mein VBA-Code ist:

Private Sub Document_Open() 
    With ActiveDocument.Content.Find 
     .ClearFormatting 
     .Replacement.ClearFormatting 
     .Forward = True 
     .Wrap = wdFindContinue 
     .Format = True 
     .MatchCase = False 
     .MatchWholeWord = False 
     .MatchWildcards = False 
     .MatchSoundsLike = False 
     .MatchAllWordForms = False 
     .Text = "" 
     .Replacement.Text = "" 
     .Execute Replace:=wdReplaceAll 
     .ClearFormatting 
     .Replacement.ClearFormatting 
     .Font.Name = "Arial" 
     .Replacement.Font.Name = "Calibri" 
     .Execute Replace:=wdReplaceAll   
     .ClearFormatting 
     .Replacement.ClearFormatting 
     .Font.Name = "Times New Roman" 
     .Replacement.Font.Name = "Calibri" 
     .Execute Replace:=wdReplaceAll  
     .ClearFormatting 
     .Replacement.ClearFormatting 
     .Font.Size = 11 
     .Replacement.Font.Size = 10 
     .Execute Replace:=wdReplaceAll     
    End With 
End Sub 

diesen Code wird das gesamte Dokument Schriftgröße verwendet ändert sich aber Schriftname ändert nur der tatsächliche Inhalt nur mit dem obigen Makro.

Ist es möglich mit VBA-Makro o tatsächlichen Inhalt des Dokuments zu ändern?

Können Sie mir vorschlagen, wie kann ich es mit VBA Macro tun?

+0

... und bitte zeigen, was Sie jetzt Ihren Code auf Ihre Frage haben bis zu Hinzufügen ... –

Antwort

0

Wenn Sie sicher sind, dass der Stil Normal auf das Dokument angewendet wird, und Sie möchten mit Normal Stil die Schrifteigenschaften dieser Teile ändern, dann können Sie den Stil in Find wie unten angegeben werden:

ActiveDocument.Content.Find.Style = ActiveDocument.Styles("Normal").

Auch .Replacement.Text = "" wird den gesamten übereinstimmenden Text aus Ihrem Dokument entfernen. Stellen Sie sicher, dass Sie .Replacement.Text = "^&" verwenden. ^& ersetzt den gleichen Text wie gefunden.

Sub FormatNormal() 
    With ActiveDocument.Content.Find 
     .ClearFormatting 
     .Style = ActiveDocument.Styles("Normal") 
     .Text = "" 
     .Replacement.Text = "^&" 
     .Replacement.Font.Size = 10 
     .Replacement.Font.Name = "Calibri" 
     .Replacement.ClearFormatting 
     .Forward = True 
     .Wrap = wdFindContinue 
     .Format = True 
     .MatchCase = False 
     .MatchWholeWord = False 
     .MatchWildcards = False 
     .MatchSoundsLike = False 
     .MatchAllWordForms = False 
     .Execute Replace:=wdReplaceAll 
    End With 
End Sub 
+0

Danke Arul, können Sie es bitte beschreiben mein Makro verwenden, weil ich in Bezug auf Makro –

+0

nicht voll bewusst bin @ A.Raut, ich habe die Antwort bearbeitet, um ein Beispiel aufzunehmen. Ändern Sie es, um zu Ihrem zu passen. – Arul

+0

@ Arul, habe ich von meiner Seite überprüft, aber Code hat nicht funktioniert in bestehenden und neu erstellten Word doc –

Verwandte Themen