如何在OpenOffice Calc宏中获取合并的单元格行/列跨度

时间:2016-05-17 03:49:27

标签: openoffice-calc

我可以检测工作表中的给定单元格是否与sheet.getCellByPosition(0,0).IsMerged

合并

有没有办法发现合并单元格的宽度/高度?

1 个答案:

答案 0 :(得分:0)

首先确定单元格跨越哪些行或列。例如,假设我们想要确定跨越两列的单元格的宽度。

然后,对于每个相关的列,找出它的宽度,并加上宽度。此代码改编自https://forum.openoffice.org/en/forum/viewtopic.php?f=20&t=19790,用于确定列的宽度:

Sub GetColumnWidth
    dim oSheet as object, oDoc As Object
    dim w as single
    dim col as integer
    oDoc = ThisComponent
    oSheet = ThisComponent.getCurrentController.getActiveSheet
    col = 1  'column B
    oColumn = oSheet.getColumns.getByIndex( col )
    'column width (in 100ths of mm)
    w = oColumn.Width / 2540
    MsgBox w
End Sub

还有一件事,看起来有一个ShrinkToFit属性。我没有测试它是否反映在Width属性中。