• 締切済み

TABLEの縦横スクロール

エクセルでいうところの「ウィンドウ枠の固定」のように固定行・固定列があり、データ部分において縦横の両方向のスクロールができる表を作成したいのですが、どうにもこうにもできません。。。 どなたか教えてください。

  • HTML
  • 回答数1
  • ありがとう数0

みんなの回答

  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.1

試しに作ってみましたが、VBScriptで作ったので、IEのみで動作可能 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <meta HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=SHIFT_JIS"> <title>テーブルのスクロール</title> <script language="VBScript"> dim data, rows, cols data = Array( _ Array("\","A","B","C","D","E","F","G"), _ Array("1","A1","B1","C1","D1","E1","F1","G1"), _ Array("2","A2","B2","C2","D2","E2","F2","G2"), _ Array("3","A3","B3","C3","D3","E3","F3","G3"), _ Array("4","A4","B4","C4","D4","E4","F4","G4"), _ Array("5","A5","B5","C5","D5","E5","F5","G5"), _ Array("6","A6","B6","C6","D6","E6","F6","G6"), _ Array("7","A7","B7","C7","D7","E7","F7","G7"), _ Array("8","A8","B8","C8","D8","E8","F8","G8"), _ Array("9","A9","B9","C9","D9","E9","F9","G9")) rows=UBOUND(data) cols=UBOUND(data(0)) sub window_onload() dim i for i=0 to UBOUND(data) -1 call insert(i) next end sub sub insert(No) dim newTR, newTD dim rowData dim i set newTR = SHEET.insertRow rowData=data(No) for i=0 to UBOUND(rowData) -1 set newTD=newTR.insertCell newTD.innerText = rowData(i) next end sub sub up() if rows>1 then SHEET.deleteRow(1) rows=rows-1 end if end sub sub down() dim newTR, newTD dim rowData, RSize, CSize dim i RSize = UBOUND(data) CSize = UBOUND(data(0)) if rows < RSize then set newTR = SHEET.insertRow(1) rowData=data(RSize-rows) for i=0 to cols -1 set newTD=newTR.insertCell if i=0 then '表題部分 newTD.innerText = rowData(0) else newTD.innerText = rowData(CSize-cols+i) end if next rows=rows+1 end if end sub sub left() dim i if cols >1 then for i=0 to SHEET.Rows.length -1 SHEET.Rows(i).deleteCell(1) next cols=cols-1 end if end sub sub right() dim newTR, newTD dim rowData, RSize, CSize dim i RSize = UBOUND(data) CSize = UBOUND(data(0)) if cols < CSize then for i=0 to rows -1 set newTD=SHEET.Rows(i).insertCell(1) if i=0 then '表題部分 rowData=data(0) else rowData=data(RSize-rows+i) end if newTD.innerText=rowData(CSize-cols) next cols=cols+1 end if end sub </script> </head> <body> <button type="button" onclick="up()">↑</button> <button type="button" onclick="down()">↓</button> <button type="button" onclick="left()">←</button> <button type="button" onclick="right()">→</button> <TABLE border=1" cellspacing="0"> <TBODY ID="SHEET" STYLE="background-color:lightcyan;"> </TBODY> </TABLE> </body> </html>

関連するQ&A

  • 【Excel2002】列を固定して縦スクロールさせない方法

    ウインドウ枠の固定で1行目を固定しています。 それを維持したまま、A列を縦スクロールさせない方法はありますでしょうか。 セルのB2をアクティブにして『ウインドウ枠の固定』では ありません。 縦横いずれの方向にスクロールさせたときも 1行目とA列は同時に固定されている、という状態にしたいのです。 過去ログを検索してみたのですが、なかなか見つかりません。 簡単なことを訊いているかもしれませんが、どうか御教授をお願い致します。

  • エクセルの1行目と1列目を同時に固定したいのですが・・・

    エクセルの1行目と1列目を同時に固定したいのですが・・・ エクセル2007を使用しています。 そこで、1行目と1列目を同時に、完全に固定できればと思っています。 といいますのも、1行目と1列目に、コマンドボタンを配置し、 2行目、2列目以降を縦横どちらにスクロールしても、 常に表示させておくことができればと思っています。 B2を選択し、ウィンドウ枠の固定をしても、 縦スクロールの場合は1列目が、横スクロールの場合は1行目が動いてしまいます。 ブラウザのフレームのように、1行目も1列目も、 縦横どちらのスクロールに対しても、完全に固定させることはできるのでしょうか? よろしくお願いいたします。

  • html+CSSでテーブルのスクロール(位置固定)

    助けてください。 たとえば、10項目の列を持つテーブルがあったとします。 レコード件数は100件だとします。 画面に表示できるのは5項目、10件だとした場合、 そのテーブルに対して縦横スクロールバーを つけるのですが、その際に縦スクロールバーを下に動かした場合、 <th>列名だけはスクロールさせず、レコード部のみスクロールさせたいです。 また、横スクロールバーを右に動かした場合、5項目は固定で6項目目以降をスクロールさせたいです ※エクセルのウインドウ枠の固定 を適用したイメージ htmlとスタイルシートで実現できますでしょうか?

    • ベストアンサー
    • CSS
  • excel  フレームのように一部分を常に表示するには?

    お世話になります。 エクセルのA,B列に、コードと項目の対応表があります。 これは、追加や変更もしていく予定です。 C列からは、A,B列の対応表に応じてデータを入力します。 データは、縦に長くなります。 A,B列の対応表を常にすべて表示させておきたいのですが、方法はありますか? 『ウインドウ枠の固定』だと、下にスクロールしたとき、対応表も収納(?)されてしまいますよね。 『分割』しても、下にスクロールすると、右も左も同じように動くので、下の行のデータを入力するときは、一度もどって、コードを確認しながらの作業となってしまいます。 ホームページのフレームのように、左側だけ常に固定しておくことはできるのでしょうか? できれば、データ部分も項目の行は固定しておきたいです。 つまり、シート内の上と左を固定して、データ入力部分だけをスクロールできるようにしたいのです。 説明がうまくできなくて、すみません。。。 なんとか、ご協力お願いいたしますm(__)m

  • Excel :行や列の固定(スクロール時)

    Excelの基本的な質問です。 例えば、表を作成していて作業中に画面に入りきらない場合に、項目の行や列だけスクロール時に消えないように固定する方法があったかと思います。あれはどのように行うのでしょうか?

  • スクロールする際に 一番上 または 一番左だけ 固定したい時・・・・

    エクセルで表を作成する時に 一番上の行 または 一番左の列を残したまま記入をしていきたいのですが・・・たくさん記入していく時に スクロールしていくと最初の項目が消えてしまい 見えなくなり 表が作成しにくいのですが 項目などを固定する方法を教えてください。 お願いします。 

  • 縦横スクロール時の固定セルの重ね順について

    http://shinsama1980.web.fc2.com/jishin2303.htm このHPの「令和5年春場所自信一番集計表」の下にある表の上5行と左2列を固定したのですが、 縦方向にスクロールさせると左2列のセルが上5行の部分に行った時に最前面に表示させたい左上の3セルよりも前面に移動されてしまいます。 左2列を縦スクロールさせても左上3セルよりも下に表示されるようにするにはどうすれば良いのでしょうか? P.S 当方はCSSについてはズブの素人ですので、 回答される方はHTMLやCSSをなるべく具体的に書いていただけると幸いです。 何卒宜しくお願い致します。

    • ベストアンサー
    • CSS
  • ワードの表で1行目を固定

    お世話になります。 ワードで表を作ったのですが、その表の1行目を エクセルのウィンドウ枠の固定のように、下に スクロールさせても1行目だけ固定することできますか? 宜しくお願いします。

  • Excelで1.2行目だけ固定して3行目以降をスクロールさせたい

    Excelで、スクロールバーを横に移動させても、1・2行目だけは動かずに、3行目以降はスクロールするようにしたいです。 つまり、画面を移動させても、1・2行目(タイトル行というか見出しというか)だけはずっと同じものが表示されて、3行目以下のデータだけがスクロールするようにしたいのですが、できますでしょうか? ウインドウ枠の固定を使ってみたのですが、縦にスクロールした時は1.2行目を表示したままにすることができましたが、横にスクロールすると1.2行目も横に移動して消えてしまいました。 よろしくお願いします。

  • EXCEL 画面のスクロール固定

    どなたかお願いします。EXCEL2000を使用しています。 excelで表を作っています。 縦約4000行 横5列です。 このような表の1列だけに、数値をひたすら入力をしています。 そこでやりたいのが入力可能状態になっているセルを、常に画面の中央に固定したいのです。 数値を入力するたびにセルが下方向に移動するのではなく、背景が上昇(スクロール)するような状態にしたいのです。 このようなことはできるのでしょうか?

専門家に質問してみよう