Registriert seit: 12.03.2016
Version(en): Excel 2003/ 2016
Hallo erst mal ....
ich bin Neuling im Word Forum, arbeite normalerweise mit Excel Von Word Makros habe ich NULL Ahnung, deswegen frage ich euch höflich
Wie musss ein Word Makro aussehten, wenn man in einem Word Dokument von 5 Seiten Text suchen und tauschen will? Gibt es dabei die Möglichkeit wie in Excel per For Next Schleife beim Tauschen den Befehl Chr(xx) einzusetzen? z.B. Selection.Replace "T", Chr(i), xlPart
Mit welchen Befehlen kann man in Word auch nur einen bestimmten Bereich auswählen. Bei Excel geht das über Range("A10:A20"). Von Word habe ich Null Ahnung! Neuling...
mfg Gast 123
Registriert seit: 22.09.2024
Version(en): 2010, 2021
19.09.2025, 12:06
(Dieser Beitrag wurde zuletzt bearbeitet: 19.09.2025, 12:08 von knobbi38.)
Hallo Gast 123,
für einen ersten Einstieg könntest du, wie in Excel auch, mit dem Makrorekorder eine VBA-Makro aufzeichnen, indem du die entsprechenden Ersetzungen mit den Word Funktionen Suchen/Ersetzen manuell durchführst.
Knobbi38
Registriert seit: 12.03.2016
Version(en): Excel 2003/ 2016
Hallo
Macrorecorder haben ihre Schattenseiten, man kann es nicht in jedem Dokument wiederholen. Selection.MoveDown Unit:=wdParagraph, Count:=162, Extend:=wdExtend Wie kommt man an Count? In Excel kein Problem LastCell zu finden, aber in Word???? Lasse ich count weg, bleibt er am Zeilenende stehen. Und was besagt wdParagraph + wdExtend. Ich kann kein Englsihc, Bei Excel gab es eine VBA Liste DE-EG
mfg Gast 123
Registriert seit: 22.09.2024
Version(en): 2010, 2021
20.09.2025, 00:10
(Dieser Beitrag wurde zuletzt bearbeitet: 20.09.2025, 00:12 von knobbi38.)
Hallo Gast, grundsätzlich ist die Programmiersprache VBA bei Word und Excel identisch, lediglich die Objektmodelle unterscheidet sich. Diese kannst du dir hier anschauen bzw. nachschlagen: https://learn.microsoft.com/de-de/office.../overview/Aber bitte beachten, dass die dt. Übersetzung nicht immer mit den engl. Begriffen übereinstimmt und bei VBA-Makros wird nun mal durchgängig engl. verwendet. Für das nachschlagen sollte es schon reichen. Wenn du dich also dort ein wenig einarbeiten und Makros verwenden möchtest, wirst du nicht darum kommen, hier ein wenig Zeit zu investieren. Am einfachsten ist es natürlich, du besorgst dir ein dt. Fachbuch um darin dann mal ein wenig zu stöbern. Das Lesen und Lernen kann dir niemand hier abnehmen. Für das Suchen und Ersetzen wird in Word das Find Objekt verwendet und mit dem Makrorecorder kannst du ein entsprechendes Makro aufzeichnen. Zu einzelnen Schlüsselwörtern und deren Bedeutung kannst du dann in der Doku s.o. das nachschlagen. Knobbi38
Folgende(r) 1 Nutzer sagt Danke an knobbi38 für diesen Beitrag:1 Nutzer sagt Danke an knobbi38 für diesen Beitrag 28
• Gast 123
Registriert seit: 08.10.2022
Version(en): Office 2019
Hallo zusammen, ich steuere noch ein paar anschauliche Beispiele zur Frage nach den Bereichen in Word bei: Code: Dim meinBereich As Range
'ganzes Dokument Set meinBereich = ActiveDocument.Range 'oder: Activedocument.content
'markierter Bereich im Dokument: Set meinBereich = Selection.Range
'von Position der Schreibmarke bis Dokument-Ende: Set meinBereich = ActiveDocument.Range(Start:=Selection.Range.Start, End:=ActiveDocument.Range.End)
'von Dokument-Anfang bis Ende zweiter Absatz: Set meinBereich = ActiveDocument.Range(Start:=0, End:=ActiveDocument.Paragraphs(2).Range.End)
Gruß Gerhard
Registriert seit: 29.09.2015
Version(en): 2030,5
z.B für paragraphende, Tabs und Leerzeichen, das ganze Dokument durchsuchen (wdreplaceall) Code: Sub M_snb() ThisDocument.Content.Find.Execute Chr(13), , , , , , , , , Chr(13) & Chr(13), 1 ThisDocument.Content.Find.Execute "^p", , , , , , , , , "^p^p", 1 ThisDocument.Content.Find.Execute vbCr, , , , , , , , , vbCr & vbCr, 1
ThisDocument.Content.Find.Execute Chr(9), , , , , , , , , Chr(9) & Chr(9), 1 ThisDocument.Content.Find.Execute "^t", , , , , , , , , "^t^t", 1 ThisDocument.Content.Find.Execute vbTab, , , , , , , , , vbTab & vbTab, 1 ThisDocument.Content.Find.Execute Chr(32), , , , , , , , , Chr(32) & Chr(32), 1 ThisDocument.Content.Find.Execute " ", , , , , , , , , " ", 1 ThisDocument.Content.Find.Execute Space(1), , , , , , , , , Space(4), 1 End Sub
|