ActiveCell.Offset 对于 libreoffice

ActiveCell.Offset for libreoffice

如何访问 LibreOffice (OpenOffice) 中所选单元格的附近?

我只能使用 "ThisComponent.getCurrentSelection" 获取选定的单元格。

我只需要一个替代 MS Excel VBA 函数 "ActiveCell.Offset".

我觉得很简单:

Function OffsetCell(col_offset, row_offset)
    oSel = ThisComponent.getCurrentSelection()
    oCellAddress = oSel.getCellByPosition(0, 0).getCellAddress()
    oSheet = ThisComponent.CurrentController.ActiveSheet()
    OffsetCell = oSheet.getCellByPosition( _
        oCellAddress.Column + col_offset, _
        oCellAddress.Row + row_offset)
End Function

例如,函数可以这样使用:

Sub DisplayOffsetCell()
    offset_cell = OffsetCell(2, 1)
    MsgBox(offset_cell.getString())
End Sub

由于我不明白的原因,关于这个话题已经有很多讨论,并提出了几个复杂的解决方案: