Thema
|
Datum
|
Von Nutzer
|
Rating
|
Antwort
|
|
30.06.2023 10:21:12 |
Moe Tie |
|
|
|
01.07.2023 18:01:48 |
xlKing |
|
|
|
01.07.2023 18:13:44 |
Gast37689 |
|
|
|
01.07.2023 19:46:20 |
xlKing |
|
|
|
02.07.2023 08:22:55 |
Gast22856 |
|
|
 Einen ganzen Abschnitt eines Word-Dokuments ersetzen |
02.07.2023 16:31:54 |
xlKing |
|
|
|
02.07.2023 19:52:11 |
Gast83186 |
|
|
Von:
xlKing |
Datum:
02.07.2023 16:31:54 |
Views:
300 |
Rating:
|
Antwort:
|
Thema:
Einen ganzen Abschnitt eines Word-Dokuments ersetzen |
Hi Moritz,
hatte auf die Schnelle nicht gesehen, dass du zweimal ElseIf foundSection drin hast. Wenn du das größere rausschmeißt passt es mit deiner Testdatei. Hier der neue Code:
Sub ErsetzeAbschnitt()
Dim userInput As String
Dim doc As Document
Dim range As range
Dim startRange As range
Dim endRange As range
Dim foundSection As Boolean
Dim stl As Style
' Benutzereingabe abfragen
userInput = InputBox("Geben Sie den Abschnitt ein, der ersetzt werden soll:", "Abschnitt ersetzen")
' Dokument und Range initialisieren
Set doc = ActiveDocument
Set range = doc.Content
foundSection = False
' Schleife über alle Absätze im Dokument
For Each para In doc.Paragraphs
' Überprüfen, ob der Absatz eine spezielle Nummerierungsfunktion hat
If para.range.ListFormat.ListType <> wdListNoNumbering Then
' Überprüfen, ob der Absatz mit dem eingegebenen Text beginnt
If Left(para.range.ListFormat.ListString, Len(userInput)) = userInput Then
' Bereich des Abschnitts festlegen
If Not foundSection Then
Set startRange = para.range
foundSection = True
Set stl = startRange.Style
End If
ElseIf foundSection Then
' Den nächsten Absatz mit gültiger Nummerierung finden
Set endRange = para.range
If endRange.Style = startRange.Style Then Exit For
End If
End If
Next para
' Den gesamten Abschnitt ersetzen, wenn ein Abschnitt gefunden wurde
If foundSection Then
range.Start = startRange.Start
range.End = IIf(endRange.Style = startRange.Style, endRange.Start - 1, endRange.End)
range.Text = "...pp..."
range.Style = stl
Else
MsgBox "Der angegebene Abschnitt wurde nicht gefunden.", vbExclamation
End If
End Sub
Gruß Mr. K.
|
- 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
Bitte geben Sie ein aussagekräftiges Thema an.
Bitte geben Sie eine gültige Email Adresse ein!
- 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
|
|
30.06.2023 10:21:12 |
Moe Tie |
|
|
|
01.07.2023 18:01:48 |
xlKing |
|
|
|
01.07.2023 18:13:44 |
Gast37689 |
|
|
|
01.07.2023 19:46:20 |
xlKing |
|
|
|
02.07.2023 08:22:55 |
Gast22856 |
|
|
 Einen ganzen Abschnitt eines Word-Dokuments ersetzen |
02.07.2023 16:31:54 |
xlKing |
|
|
|
02.07.2023 19:52:11 |
Gast83186 |
|
|