ViewData 
ウィンドウでのシートやセルの表示状態を設定します。コントローラから得られる他の情報はアクティブシートのものばかりですが、この ViewData を利用すれば非アクティブウィンドウの表示状態の取得、設定が行えます。
取得 
コントローラから取得します。
Sub GetViewData
oController = ThisComponent.getCurrentController()
sViewData = oController.getViewData()
msgbox sViewData
End Sub
設定 
次のようにして設定します。
Sub GetViewData
sViewData = "....."
oController = ThisComponent.getCurrentController()
oController.restoreViewData(sViewData)
End Sub
ViewData の構成 
ViewData は幾つかの部分から成っています。以下のような構成をしており各部分の区切りは ";" です。
100/60/0;0;tw:270;8/24/0/2/0/20/2/4/0/9/20;;
- 100/60/0: 拡大率/改ページプレビューモードの拡大率/表示モード
- 拡大率は変更しても有効になりません
- 改ページプレビューモードの拡大率は変更しても有効になりません
- 0: 標準表示モード、1: 改ページプレビューモード
- 0: アクティブシートインデックス
- tw:270: 不明:水平スクロールバーの左位置
- 以降: 各シートの表示設定。一度も表示されたことのないデータは含まれないことがあります。
各シートのデータはシートウィンドウの分割状態で利用される部分が異なります。
シート ViewData 
非分割状態 
インデックス | 説明 |
0, 1 | カーソル位置 列、行 |
6 | いつも 2 |
7, 10 | 左上表示セルインデックス 列、行 |
他 | 0 |
例: 7/16/0/0/0/0/2/4/0/0/9
- カーソル位置 H17 (7/16)
- 左上セル: E10 (4, 9)
分割状態 行 
インデックス | 説明 |
0, 1 | カーソル位置 列、行 |
3 | 行分割有効 1, 固定 2 |
5 | グリッドウィンドウ内での縦分割位置 (pixel) |
6 | フォーカスのあるウィンドウインデックス 上 0、下 2 |
7, 9 | 上側ウィンドウ左上表示セルインデックス 列、行 |
7, 10 | 下側ウィンドウ左上表示セルインデックス 列、行 |
8 | 行分割のみの場合にはウィンドウ左端表示セルは同じなので不使用 |
例: 7/16/0/2/0/20/0/4/0/9/20;
分割状態 列 
インデックス | 説明 |
0, 1 | カーソル位置 列、行 |
2 | 列分割有効 1、固定 2 |
4 | グリッドウィンドウ内での横分割位置 (pixel) |
6 | フォーカスのあるウィンドウインデックス 左 2、右 3 |
7, 10 | 左側ウィンドウ左上表示セルインデックス 列、行 |
8, 10 | 右側ウィンドウ左上表示セルインデックス 列、行 |
9 | 列分割のみの場合にはウィンドウ上端表示セルは同じなので不使用 |
例: 9/15/1/0/438/0/2/5/1/0/7
分割状態 行、列 
インデックス | 説明 |
0, 1 | カーソル位置 列、行 |
2 | 列分割有効 1、固定 2 |
3 | 行分割有効 1、固定 2 |
4 | グリッドウィンドウ内での横分割位置 (pixel) |
5 | グリッドウィンドウ内での縦分割位置 (pixel) |
6 | フォーカスのあるウィンドウインデックス 左上 0、右上 1、左下 2、右下 3 |
7 | 左側ウィンドウ左上表示セルインデックス 列 |
8 | 右側ウィンドウ左上表示セルインデックス 列 |
9 | 上側ウィンドウ左上表示セルインデックス 行 |
10 | 下側ウィンドウ左上表示セルインデックス 行 |
例: 2/21/1/1/438/185/3/5/1/7/43
- カーソル位置: C20 (2/21)
- 行、列分割有効
- アクティブウィンドウ右下 (3)
- 左上ウィンドウ: F8 (5, 7)
- 右上: B8 (1, 7)
- 左下: F44 (5, 43)
- 右下: B44 (1, 43)