ちょっと先の未来クイズ第4問

Excelで入力用のシートを作りました。
ちょうど、画面に収まるように作っているので
スクロールさせたくありません。
オプションで、スクロールバーは非表示にしていますが、
マウスのホイール(?)でスクロールしてしまいます。
何とかスクロールさせないようにしたいのですが、
よろしくお願いいたします。

A 回答 (5件)

シートのVBAプロパティウインドウを開いて、


ScrollAria の値に表示させたい範囲を入れてみてはいかがでしょう。
シートのVBAプロパティウインドウは、コントロールツールボックスのメニューバーから、プロパティのコマンドボタンをクリックすると出てきます。

これで、スクロールバーがあっても動きませんし、私の環境(WIN2000+EXCEL2000)ではホールマウスでも動きません。

ただし、一つ問題があります。シートのプロパティはファイルを一度閉じると解除されますので、ブックを立ち上げるときに再設定しなければなりません。これを自動でやるには、VBEのThisWorkbookのコードウインドウに

Private Sub Workbook_Open()
ThisWorkbook.Sheets(1).ScrollArea = "$A$1:$Q$50"
End Sub

次の三行の記述をするとできます。
    • good
    • 0
この回答へのお礼

ありがとうございます。
できました!
ところで、Auto_Open()プとWorkbook_Open()
の違いは何なんでしょうか?
私は、Auto_Open()に記述しましたが、それでもOKでした。

お礼日時:2003/09/30 20:57

> ところで、Auto_Open()プとWorkbook_Open() の違いは何なんでしょうか?



コードビハインドオブジェクトが採用される前のなごりという言い方が正しいかは判りませんが、(^^;)
私はEXCEL95以前の互換性を保つためにAuto_Open()があると解釈してます。

ただ、excel97では、Openメソッドで開く他のファイルのWorkbook_Openイベントは実行されなかったと思います。そんなときAuto_Openが有効だったと思います。

excel2000では問題ありませんので、コードビハインドオブジェクトの利点を生かしてWorkbook_Openのみで事足りると思いますが、まぁ、どちらでもよろしいかと。
    • good
    • 0
この回答へのお礼

詳しい解説、ありがとうございます。
ところで、コードビハインドオブジェクトってなんですか。
まあ、こんなに質問ばかりしていては失礼なので、何とか自分で探して見ます。
これからは、Workbook_Openの方を使おうかと思います。
どちらも同じなら、Workbook_Openの方が簡単そうですし、意味がわかります。

お礼日時:2003/10/02 06:23

Excelで入力用のシートがちょうど、画面に収まるように作ってあれば、


「表示」「ズーム」で倍率を小さくし表の右下のセルにカーソルを置き、表全体とその右下のカーソルのあるセルが表示されるようにしてください。
その状態で「ウィンドウ」「ウィンドウ枠の固定」とし表示の倍率をもとにもどせば出来ます。
    • good
    • 0
この回答へのお礼

ありがとうございます。
入力画面が固定されているので、表面上は動きませんが、スクロールは実行されているようです。
手軽にできる点がいいかもしれません。

お礼日時:2003/10/01 05:59

こんにちは。

maruru01です。

バージョンが明記されていないので、こちらの環境(2000)で回答します。
以下の手順で行います。

・[Alt]+[F11]を押して、VBEの画面を表示させる
(メニューの[ツール]→[マクロ]→[Visual Basic Editor]でもOK)
・[Ctrl]+[R]で、プロジェクトエクスプローラを表示させる
(たいてい画面の右側にすでに表示されている)
・プロジェクトエクスプローラで、VBAProject(ブック名)→Microsoft Excel Objects→スクロールを制限したいシート名を選択する
・[F4]でプロパティウィンドウを表示させる
(たいていプロジェクトエクスプローラの下にすでに表示されている)
・プロパティの中の[ScrollArea]に、
「A1:Z100」
などとスクロールさせる範囲を入力する
(決定すると、セル範囲は絶対参照になる)

これで、設定した範囲しかスクロール出来なくなります。
なお、元に戻す場合は、[ScrollArea]の内容を削除して下さい。
    • good
    • 0
この回答へのお礼

ありがとうございます。
No2の方と同じ方法ですよね。
ただ、自動的に実行できるので、No2の方の方法にしました。

お礼日時:2003/09/30 21:01

ども


こんなことで宜しいでしょうか
表示倍率を一度50%にして、メニューのウィンドウ→分割を選択して必要セル範囲まで移動させて、表示倍率を100%
にもどす。
もしくは、ウィンドウ枠の固定を使われたらいかがでしょうか
    • good
    • 0
この回答へのお礼

ありがとうございます。
ただ、No2の方の方法を取り入れました。
ウィンドウ枠の固定とかもいいかもしれませんが、
どうしたらいいかよくわかりません。

お礼日時:2003/09/30 20:59

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


おすすめ情報