LibreOffice Basic アクティブシートへの操作
LibreOffice Basicでは現在アクティブなシートを対象にした操作であっても、明示的にシートオブジェクトを
取得して操作対象とする必要があります。以下のマクロはアクティブシートのG,M,S,Y列の文字色を赤に変える
処理を行います。
Sub ChangeToRedChar
Dim oDoc as Object
Dim oSheet as Object
Dim oSelRange as Object
oDoc = ThisComponent
'Active Sheetを取得
oSheet = ThisComponent.CurrentController.ActiveSheet
'G,M,S,Y=6,12,18,24
for i=6 to 24 step 6 'G,M,S,Y列に対して色変更
oSelRange = oSheet.getColumns().getByIndex(i)
oSelRange.CharColor = RGB( 255, 0, 0 )
next i
End Sub
OpenOfficeマクロプログラミング―「Writer」「Calc」「Base」…OOoをBasicで便利に! (I・O BOOKS)
