• ベストアンサー

エクセル インデックスを用いた串刺し計算

例えば sheetが10枚で "A1" の値を合計するマクロで11枚目のsheetの "A3"に表示させるのに 下記のようにすると出来ましたが、これを短く記述する方法を教えてください、よろしくお願いします。 Range("a3").value=Worksheets(1).Range("a1").valur + Worksheets(2).Range("a1").value + Worksheets(3).Range("a1").value + ・・・・・・・Worksheets(10).Range("a1").value

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

  • ベストアンサー
  • nao-y
  • ベストアンサー率58% (111/190)
回答No.2

#1の方がおっしゃっている > 又は、For ~ Nextで繰り返し処理を行う。 を実現なさりたいということですね。 例えば、以下のコードでできると思います。 Dim i as Long Dim Kei as Long Kei = 0 For i = 1 To 10 Kei = Kei + Worksheets(i).Range("A1").Value Next Range("A3").Value=Kei

hoshi7777
質問者

お礼

ありがとうございました。シート枚数が多いものですから大変助かりました。

その他の回答 (1)

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.1

一例です。 Range("A3").Value = Evaluate("sum(sheet1:sheet10!A1)") 又は、For ~ Nextで繰り返し処理を行う。

hoshi7777
質問者

補足

ありがとうございます、質問が不備でした、シートには各々(シート名)があります。 又、シート名は変更されます、そのためインデックス番号での集計をしています。 よろしくお願いします。

関連するQ&A