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

解決済みの質問

エクセルVBA 複数シートからのデータ取得

質問失礼します。

現在エクセルVBAを用いてマクロを作成しているのですが、
30ものシートから複数のデータを取得する方法がわかりません。
Sheet1.Cells(○,□).value とすれば、Sheet1の○□のセルからの
データは取得できるのですが、それをSheet30まで書き続けると
結構な行数になってしまいます。
そこで、Sheet1~Sheet30まで1~30の数字をループで変更させながら
参照していく方法はありませんか?
自分でも色々試してみたのですが、どれも成功しなかったので。。

回答の程よろしくお願いします。

投稿日時 - 2007-06-28 23:51:19

QNo.3124151

すぐに回答ほしいです

質問者が選んだベストアンサー

これでも行けます

For sh = 1 To 30
  Worksheets(sh).Cells(○,□).value = 何チャラカンチャラ
Next

投稿日時 - 2007-06-29 00:41:50

お礼

さっそく試してみます!
お早い回答ありがとうございました^^
今月中なので助かりました~><

投稿日時 - 2007-06-29 00:59:09

ANo.2

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

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

回答(2)

対象シートの名前を固定部分と数字部分に分けて数字部分を増加させつつ、
固定部分と数字部分(をstringに変換して)再度くっつけるのはいかがですか?
for i = 1 to 30 step 1
nameofsheet = sheetnameconst & ltrim(str(i))
'nameofsheetを使ってごにょごにょ…
next

変数宣言ははしょってますが判りますよね?

投稿日時 - 2007-06-29 00:34:07

あなたにオススメの質問