Ich möchte in einem RichTextItem (mailbody) eine Tabelle erzeugen.
Die Besonderheit ist, dass ich die Zeilen dynamisch anhänge, weil ich im Vorhinein nicht weiß, wie groß die Tabelle sein muss.
Hier ein Codeausschnitt:
If rtnav.FindFirstElement(RTELEM_TYPE_TABLE) = False Then
'd.h. es wurde noch keine Tabelle angelegt
Call tempRTI.AppendTable(1, 3)
rtnav.FindFirstElement(RTELEM_TYPE_TABLE)
Set RTtable = rtnav.GetElement
rtnav.FindFirstElement(RTELEM_TYPE_TABLECELL)
End If
Dim col As Integer
For col = 1 To 3
Call mailbody.BeginInsert(rtnav)
Select Case col
Case 1:
Call mailbody.AppendDocLink(form, "Neues Dokument ansehen")
Case 2:
Call mailbody.AppendText("Spalte2")
Case 3:
Call mailbody.AppendText("Spalte3")
End Select
Call mailbody.EndInsert
rtnav.FindNextElement(RTELEM_TYPE_TABLECELL)
Next
rtnav.FindLastElement(RTELEM_TYPE_TABLECELL)
RTtable.AddRow
Habe ich eine Zeile, funktioniert das auch. Beim Anfügen von einer weiteren Zeile scheint er jedoch die Position der letzten Zelle zu verwerfen, sodass er am Anfang der Tabelle (sogar VOR der Tabelle) mit dem Schreiben weitermacht.
Zur besseren Vorstellung habe ich ein mal 2 Screenshots angehängt.
Hat da jemand eine Idee? Sowas schonmal gelöst?