Trotz googeln und Forumssuche (und dem Lesen einiger Threads zum Thema) komme ich nicht weiter.
Ich ermittle per LS die Absätze in einem RTItem, errechne aus der Anzahl der Zeichen die ungefähre Zeilenanzahl und möchte bei mehr als 20 Zeilen einen Seitenumbruch einfügen.
Ich bekomme in der Zeile oRTItem.Insert... den "position is not valid" Fehler.
Vielleicht denke ich auch zu kompliziert und es geht einfacher?
Bin für jede Anregung dankbar.
Code-Snippet:
| If Not (Doc Is Nothing) Then |
| Set oRTItem = Doc.GetFirstItem("body") |
| Set rtnav = oRTItem.CreateNavigator |
| |
| If rtnav.FindFirstElement(RTELEM_TYPE_TEXTPARAGRAPH) Then |
| Set rtrange = oRTitem.CreateRange |
| iCount = 0 |
| iSumLines = 0 |
| |
| Do |
| Call rtrange.SetBegin(rtnav) |
| cRun = rtrange.TextParagraph |
| iLen = Len(cRun) |
| iLen = Round((iLen/100),0) |
| iSumLines = iSumLines + iLen |
| If (iSumLines > 20) Then |
| rtnav.SetPosition(rtrange) |
| Call oRTItem.BeginInsert(rtnav, True) |
| Call oRTItem.AddPageBreak |
| Goto EndSub |
| End If |
| Loop While rtnav.FindNextElement(RTELEM_TYPE_TEXTPARAGRAPH) |
| End If |
| Else |
| Print "no document, no check" |
| End If |