Danke für Eure Antworten
Guido Grün
mailto:guido.gruen@utanet
theoretisch:
sobald definiert ist, was eine Textstelle ist,
ist das Problem lösbar.
Praktisch:
Angenommen, Textstellen wären Absätze, dann
jeden Absatz mit jedem anderen Absatz vergleichen.
Etwas so (very quick and dirty):
Public Sub Test04()
Dim x As Integer
Dim i As Integer
Dim j As Integer
Dim strA As String
Dim strB As String
x = ActiveDocument.Paragraphs.Count
For i = 1 To x
For j = 1 To x
strA = ActiveDocument.Paragraphs(i).Range.Text
strB = ActiveDocument.Paragraphs(j).Range.Text
If strA = strB And i <> j Then
MsgBox "gleich = " & i & "," & j
End If
Next
Next
End Sub
Zu beachten wäre, dass z.B. (hier nicht eliminiert)
wenn Absatz(4) = Absatz(5) then
Absatz(5) = Absatz(4)
Gruß
Helmut Weber
verwende in einer *Kopie* des Dokumentes Tabelle, Sortieren, Absätze;
dann weißt Du immerhin schon, *welche* Absätze mehrfach vorkommen.
Viele Grüße vom Niederrhein
Lutz, MVP für Word/VBA
Wenn das noch möglich wäre, dann danke vielmals!
Guido Grün
mit Tabellen kann ich's nicht so aus dem Ärmel
schütteln, ist eigentlich ein mehrdimensionales Array,
und wenn's vertikal oder horizontal verbundene
Zellen gibt, wird's noch komplizierter,
und vielleicht willst Du auch noch gleiche Zellen finden,
aber man könnte folgendes brauchen:
x = ActiveDocument.Tables.Count
y = ActiveDocument.Tables(x).Rows.Count
z = ActiveDocument.Tables(x).Rows(y).Cells.Count
wieder mal sehr vereinfacht (Zeilenweise):
strA = ActiveDocument.Tables(1).Rows(1).Select
strA = Selection.Text
ActiveDocument.Tables(2).Rows(1).Select
strB = Selection.Text
If strA = strB Then
' ...
End If
Gruß
Helmut weber