Top > OOoBasic > Calc > visiblearea

表示範囲 Edit

シート中に表示されている範囲を調べたり変更したりしてみます。

表示セル範囲オブジェクト Edit

表示セル範囲を取得するメソッドを使用することで表示範囲に相当するセル範囲オブジェクトを取得することができます。getReferredCells メソッドを使用します。

.table.XCell getReferredCells()

このメソッドで戻されるオブジェクトはセルオブジェクトと同じものです。

また,戻されるオブジェクトに含まれる範囲はウィンドウ内に完全に表示されているセルのみが含まれるセル範囲です。少しでもはみ出ているセルは含まれません。

次のようにしてこのメソッドを使用してみます。

Sub visiblearea_1
Dim oDoc As Object
Dim oController As Object

  oDoc = ThisComponent
  oController = oDoc.getCurrentController()
  MsgBox oController.getReferredCells().RangeAddress.EndColumn
End Sub

最初の表示セル Edit

ウィンドウ内に表示されている最初のセルのアドレスを知る方法です。

取得 Edit

ウィンドウ内に表示されている最初のセルのアドレスを取得するにはgetFirstVisibleColumngetFirstVisibleRow メソッドを使用します。

long getFirstVisibleColumn()
long getFirstVisibleRow()

例です。

Sub visiblearea_2
Dim oDoc As Object
Dim oController As Object

  oDoc = ThisComponent
  oController = oDoc.getCurrentController()
  MsgBox oController.getFirstVisibleColumn()
  MsgBox oController.getFirstVisibleRow()
End Sub

設定 Edit

ウィンドウ内に表示される最初のセルを設定するには setFirstVisibleColumnsetFirstVisibleRow メソッドを使用します。

void setFirstVisibleColumn( long nColumnAddress )
void setFirstVisibleRow( long nRowAddress )

例です。

Sub visiblearea_3
Dim oDoc As Object
Dim oController As Object

  oDoc = ThisComponent
  oController = oDoc.getCurrentController()
  oController.setFirstVisibleColumn( 3 )
  oController.setFirstVisibleRow( 5 ) 'D6
End Sub

Reload   New Lower page making Edit Freeze Diff Upload Copy Rename   Front page List of pages Search Recent changes Backup   Help   RSS of recent changes