プロが教えるわが家の防犯対策術!

例えば 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

A 回答 (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
    • good
    • 0
この回答へのお礼

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

お礼日時:2012/05/24 17:10

一例です。


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

この回答への補足

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

補足日時:2012/05/24 16:10
    • good
    • 0

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