Home > コンピュータ > LibreOffice > マクロ > Calc > 選択したセルに値を入力する

LibreOffice Calcマクロで、選択したセルに値を入力する

新規作成日 2019-06-16
最終更新日

LibreOffice Calcマクロで、選択や選択範囲を操作し、値を入力したり、背景色を変更したりします。

Star Basic スタイル

セルの位置の指定
説明
getCellByPosition セルの座標で指定する
getCellRangeByName A1形式で指定する

Star BasicのgetCellByPositionが、0始まりで、(x座標,y座標)と指定するのに対して、VBAのCellsでは、1始まりで、(y座標,x座標)と指定します。

REM  *****  BASIC  *****
Option Explicit

Sub EnterValueInSelectedCell 
' 選択したセルに値を入力する

	Dim actSheet As Object
	Dim cellPosition As Object
	Dim cellRange As Object
	
	'コントローラを取得する
	Dim oCtrl As Object
	oCtrl = ThisComponent.CurrentController	
	
	' アクティブシートを取得する
	actSheet =  ThisComponent.CurrentController.ActiveSheet
	
	' 選択されたセルの位置をcellPositionに、代入する getCellByPosition
	cellPosition = actSheet.getCellByPosition(2,3)
	
	' セルの位置を指定して選択する
	oCtrl.Select(cellPosition)
	
	' 選択されたセルに値を入力する
	ThisComponent.CurrentSelection.String = "選択セル(2,3)"

	' 選択されたセルの位置をcellPositionに、代入する getCellRangeByName
	cellPosition = actSheet.getCellRangeByName("D4")

	' セルの位置を指定して選択する
	oCtrl.Select(cellPosition)
	
	' 選択されたセルに値を入力する
	ThisComponent.CurrentSelection.String = "選択セル(""D4"")"
	
	' セルの範囲を指定する
	 cellRange =  actSheet.getCellRangeByName("C6:E8")

	' セルの位置を指定して選択する
	oCtrl.Select(cellRange)
	
	' 選択範囲の背景色を変更する
	oCtrl.Selection.CellBackColor=RGB(0, 0, 255) 		
		
	
End Sub

実行結果

LibreOffice Calcマクロで、選択したセルに値を入力する

参考サイト

このエントリーをはてなブックマークに追加