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

エクセル2010で、シート1にシート2、シート3のA1を合計するという式を入れました。
この後に、シート3、シート4と同じ形式のシートを他のファイルからコピーしてくるのですが、
自動的にシート1の合計値の式の対象にする方法はないでしょうか?

やはりシートを追加したときに、シート1の合計値を出す式に自分で合計対象セルとして
入れなければいけないでしょうか?

シートを数百は追加していくので、一つ一つマニュアルでやるのは少々苦痛で。

アドバイスください。よろしくお願いします。

A 回答 (3件)

'コレでもどうぞ、、、


'ThisWorkbookに登録
Option Explicit
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Dim xSheet As Worksheet
Dim xSum As Long
If (Sh.Name = "Sheet1") Then
For Each xSheet In Worksheets
If (xSheet.Name <> "Sheet1") Then
xSum = xSum + xSheet.Range("A1").Value
End If
Next
Range("A1").Value = xSum
End If
End Sub
    • good
    • 1
この回答へのお礼

回答ありがとうございます。

お礼日時:2013/03/14 08:37

No.1のkeithinさんの回答にちょっと補足


START と END のシートの位置が逆にならないように気を付けてください
3D参照の数式がなくなります。
# 某掲示板で同じ回答をしたときに気付いたので。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

お礼日時:2013/03/14 08:38

STARTというシートとENDというシートを準備



>自動的にシート1の合計値の式の対象にする方法はないでしょうか?

STARTからENDまでのシートの中にシート2,3、4,5,6…を挿入します
数式は
=SUM(START:END!A1)
とします

言わずもがなですがSTARTシートとENDシートは何も記入する必要無しです。




#参考
理屈がわかれば、同じ数式でシート2とシート3の間にシート4,5,6を挿入していけば、余計なシートを準備する必要もありません。
「エクセルでシートを追加したときに自動的に」の回答画像1
    • good
    • 1
この回答へのお礼

回答ありがとうございます。

お礼日時:2013/03/14 08:37

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

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


このQ&Aを見た人がよく見るQ&A