LibreOffice Calc Basic - セルを結合する方法
◆mergeメソッド
LibreOffice Basicでセルを結合するには、Rangeオブジェクトのmergeメソッドを利用します。mergeメソッドの引数にTrueを指定すると結合され、Falseを指定すると結合が解除されます。
Sub MergeCell ' ************************* rem セルを結合する ' ************************* Dim oSheets, oSheet Dim oRange oSheets = ThisComponent.Sheets oSheet = oSheets.getByName("Sheet1") oRange = oSheet.getCellRangeByName("B1:C1") oRange.merge(True) End Sub
なお、マクロ記録機能で作成されたマクロは次のようになりました。これはトグルになっているので、もし結合されていれば結合が解除されます。また、シートの指定はしていませんのでアクティブシートに対して適用されます。
sub Main rem ---------------------------------------------------------------------- rem define variables dim document as object dim dispatcher as object rem ---------------------------------------------------------------------- rem get access to the document document = ThisComponent.CurrentController.Frame dispatcher = createUnoService("com.sun.star.frame.DispatchHelper") rem ---------------------------------------------------------------------- dim args1(0) as new com.sun.star.beans.PropertyValue args1(0).Name = "ToPoint" args1(0).Value = "$B$1:$C$1" dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, args1()) rem ---------------------------------------------------------------------- dispatcher.executeDispatch(document, ".uno:ToggleMergeCells", "", 0, Array()) end sub▼ページトップへ