Mein Problem: Ich will im Writer mit einem Makro mit Hilfe der API auf jede einzelne von mit der Maus selektierten Zellen einer (komplexen) Texttabelle zugreifen.

Für die gesamte Tabelle gibt es die Methode getCellNames(), die fehlerlos die Namen aller Zellen ausgibt, so dass ich jede Zelle mit oTable.getCellByName(sName) instanziieren kann. So etwas fehlt sowohl für den Service CellRange als auch für TextTableCursor.

Wie kann ich mein Ziel erreichen?

Sub GetEachCellInSelection(Optional oDoc, Optional oCellSel)
  Dim oTable, oCellRange, aCellNames() As String
  Dim sRangeName&

  If IsMissing(oDoc) Then oDoc = ThisComponent
  If IsMissing(oCellSel) Then oCellSel = oDoc.CurrentSelection

  If oCellSel.supportsService("com.sun.star.text.TextTableCursor") Then
    oTable = oDoc.CurrentController.ViewCursor.TextTable
    sRangeName = oCellSel.RangeName 'Hilft mir nicht weiter
    oCellRange = oTable.getCellRangeByName(sRangeName) 'Das auch nicht
    '????
  End If
End Sub

Bin ich einfach nur blind?

Volker

--
Liste abmelden mit E-Mail an: [email protected]
Probleme? 
https://de.libreoffice.org/hilfe-kontakt/mailing-listen/abmeldung-liste/
Tipps zu Listenmails: https://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: https://listarchives.libreoffice.org/de/users/
Datenschutzerklärung: https://www.documentfoundation.org/privacy

Antwort per Email an