資料室 > ブック・ウィンドウ・シートの操作 > ウィンドウの操作 > 行(列)方向2箇所でウィンドウ枠固定

行(列)方向2箇所でウィンドウ枠固定

メニュー[ウィンドウ(W)]>[ウィンドウ枠の固定(F)]で固定できるのは列方向、行方向にそれぞれ一箇所のみの仕様なので、この機能にこだわる限りこれを2箇所以上にすることは出来ない。このような場合、ブックの設計を工夫することで擬似的に固定されているように見せる。

Sheet1のA1:K10までリストデータがあり、A列とK列をを固定表示、B列からJ列(6列)までのリストのうち、3列だけをA列とK列の間に表示する。OFFSET関数とコントロールツールのスピンボタンを利用してリストの中央部分をスクロールさせる例である。

  1. スピンボタンを配置する部分が確保できない場合は一行目を選択し、[編集(E)]>[挿入(I)]>[行(R)]で行挿入し、ボタンを配置するスペースとする。
  2. K:M列を選択し、[編集(E)]>[挿入(I)]>[列(C)]で列挿入。
    この時点でリストは空白の1行目、A2:J11が元のリストの一部、K列からM列が空白列、後尾固定したいの列がN列になっている。
  3. [表示(V)]>[ツールバー(T)]でコントロールツールバーにチェック。
  4. スピンボタンを選択し、K1からN1の任意のセルへ配置する。
  5. スピンボタンを右クリック、プロパティを次のように設定する。
    LinkedCell Sheet1!B1
    Max 6
    Min 0
  6. 空白のセルK2へ次の数式を入力する。
    =OFFSET(B2,,$B$1,,)
  7. K2をコピー、K2:M11を選択し、貼り付け。
  8. B列からJ列を選択、[書式(F)]>[列(C)]>[表示しない(H)]で列を非表示とする。

上記の手順で先頭列と後尾列は固定表示、その間のデータは非表示となる。OFFSET関数で非表示にしたデータの一部だけを表示させる。スピンボタンクリックによりLinkedCellとしたB1の値を変化させ、OFFSET関数により表示するデータの位置を決定し擬似的にスクロール表示とする。
スピンボタンのプロパティでMaxの部分はスクロールさせる列数の上限を決めるものなので、実際に表示させる列数により調整が必要である。
「Max値=元データの列数−表示させる列数」
上記は9列のうち3列表示なので9-3=6。4列表示とする場合は9-4=5となる。
なお、OFFSET関数では非表示としたリストの値だけを参照するので、スピンボタンで参照位置を変更しても列幅や表示形式を元の列と同じにすることは出来ない。


前(シートの一行目(一列目)をスクロールしても表示) 目次 次(印刷)


SEO [PR] 爆速!無料ブログ 無料ホームページ開設 無料ライブ放送