こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

EXCEL VBAでの質問

EXCEL97です。いくつかのワークシートに、それぞれボタンを作っています。各ボタンは、処理に応じて、同じ動きをするサブルーチンを通るようにしています。1のシートのマクロはスムーズに動きます。2のシート以降からは、同じサブルーチンを通るにも関わらず、オブジェクトの不正や、インデックスの有効範囲エラーになってしまいます。
それから、同じ種類のオブジェクトが他のシートにわたる時、配列のようなINDEXをつけることは出来ますか?
それと、表を作る時、一つずつのセルを小さくすると、動きが遅くなったり、重くなったりしますか?セルは大きい方がいいのでしょうか?
以上教えて下さい。

投稿日時 - 1999-08-19 12:42:50

QNo.92

暇なときに回答ください

このQ&Aは役に立ちましたか?

48人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.2

QQQ

1つめ。サブルーチンがわからないと何ともいえないです。
2つめ、オブジェクト変数を使うのはいかがでしょう
Dim ob(2) As Object
Set ob(0) = Sheets(1).Label1
Set ob(1) = Sheets(1).Label2
とかすればいいのでは。
3つめ主旨がよく見えませんが、画面上にたくさんのセルが表示されていれば
少ないときより画面描画の時間がかかるかもしれません。
しかし、描画を止めればよいでしょう
ScreenUpdating プロパティをHELPで参照してください。

投稿日時 - 1999-08-19 22:28:11

ANo.1

ActiveSheetプロパティで、ボタンを貼り付けてあるSheetが参照できますよね。Sheetを配列化して扱うときは、Sheetsコレクションが有効です。

投稿日時 - 1999-08-19 17:26:05