Danke für die Antwort, aber das hilft mir nicht. Ich will die Zeilennummer in der Tabelle haben (oder das Zeilenobjekt). Wenn ich das richtig verstehe, prüft Dein Programm, ob die Tabelle mit dem Lesezeichen die gleiche ist wie die Tabelle, in der der Cursor steht. Das hatte ich aber schon vorausgesetzt
Was verstehst du unter vorrausgesetzt? In deinem Quelltext wurde das finden der richtigen Tabelle nicht umgesetzt. Und genau darum geht es erst mal nur.
Beim Programmieren wird ein Problem immer in Teilprobleme zerlegt und diese dann nach udn nach gelöst. Wenn alle Teilprobleme gelöst wurden, ist das gesamte Problem gelöst.
Du scheinst diesen Schritt (bzw. Schritte) komplett überspringen zu wollen und das läuft gegen den Baum. Eben darum kommst du auch zu keinem Ergebnis.
Nachdem man also das Problem mit der richtigen Tabelle gelöst hat, muss man nurnoch das gleiche Spiel wie schon bei der Tabelle mit den Zeilen machen. Ich verstehe nicht so ganz wo hier jetzt das Problem besteht dies selber umzusetzen?
Option Explicit
Sub Test()
Dim tbl As Word.Table
Dim tblBM As Word.Table
Dim bm As Word.Bookmark
If Selection.Information(wdWithInTable) Then
Set tbl = Selection.Tables(1)
Else
Exit Sub
End If
With Selection.Document
If .Bookmarks.Exists("Summe") Then
Set bm = .Bookmarks("Summe")
With bm.Range.Tables
If .Count > 0 Then
Set tblBM = .Item(1)
Else
Exit Sub
End If
End With
Else
Exit Sub
End If
End With
Dim Row As Word.Row
If tbl.Range.Start = tblBM.Range.Start _
And tbl.Range.End = tblBM.Range.End _
Then
For Each Row In tblBM.Rows
If Row.Range.Start <= bm.Start _
And bm.End <= Row.Range.End _
Then
'die gesuchte Zeile, in welcher die Textmarke steht, wurde gefunden
Exit For
End If
Next
End If
MsgBox "Textmarke steht in Zeile " & Row.Index
End Sub
*seufz* Irgendwie ist es immer das gleiche. Jede will hier eine Komplettlösung haben, die er einfach nur kopieren braucht, und ab da an ist alles vergessen. Oftmals kommt nicht mal ein Dankeschön zurück...
|