電子書籍ギフト♪ 最大10,000円が当たる!

ちょっと調べたらすぐわかるだろう!

¨¨¨と思ったら案外わからなかったので、教えてください。


まずやりたいことから説明します。

(1)【シート1】A1セルに数字を入力します。(例としてA1に数字の10が入っているとします。)
(2)【シート2】A2セルに数字を入力します。(例としてA2に数字の20が入っているとします。)

するとなんと・・・
(3)【シート2】A1セルに(1)+(2)の合計(30)が入っています!

さらに
(4)【シート3】A2セルに数字(30)を入力すると・・・

あらまぁ、
(5) (3)+(4)の合計が【シート3】のA1に数字の60が入っていたりします!


・・・・ていうことを【シート4】、【シート5】、【シート6】・・・とやっていきたいのです。


**:::ちなみに:::************

■VBAはもちろんわかりません。。
■(3)で【シート2】A1セルに=SUM(B1+Sheet1!A1)とかやればいいじゃんと思うかもしれませんがなんか違います。
■VBAで自動で出来るに越したことはないのですが、関数とかで毎回手動でも上手いこと出来れば問題ないです。(計算間違いすることがなければ何でもいいです)

*********************


しょうもない質問で申し訳ありません。
本気とかいてマジで調べればわかりそうな気もするんですが、
どうも人間として重要な「ヤル気」というものが欠如しているせいか、
普通に萎えました。


皆様お忙しい中、大変お手数をお掛け致しますが、
お力添えをどうかよろしくお願い申し上げます(-_-)

教えて!goo グレード

A 回答 (1件)

シート名を丁寧につけて関数だけでやる方法が一番ですが、やる気が無いのでしたら次の通りにします。



手順:
ブックを開く
ALT+F11を押す
現れた画面で挿入メニューから標準モジュールを挿入する
現れたシートに下記をコピー貼り付ける

private function sumleft(a1, b1)
 dim res1, res2
 application.volatile

 if typename(a1) = "Range" then
 res1 = a1.parent.previous.range(a1.address).value
 else
 res1 = a1
 end if

 if typename(b1) = "Range" then
 res2 = b1.value
 else
 res2 = b1
 end if
 sumleft = application.sum(res1, res2)
end function

ファイルメニューから終了してエクセルに戻る

計算の理屈から「左隣のシートが無い一番左のシート」は除いて、2枚目以降のシートのA1セルに
=sumleft(A1,A2)
と記入する
一つ下のA2に数字を記入すると、左隣のシートのA1セルと合算した結果が現れます。




#一応参考
左端からシート名がSheet1、Sheet2、Sheet3…のように順序良く並んでいるとします
ブックを必ず一回保存します
2枚目以降のA1セルに
=SUM(INDIRECT("Sheet"&(SUBSTITUTE(MID(CELL("filename",A1),FIND("]",CELL("filename",A1))+1,99),"Sheet","")-1)&"!A1"),A2)
と記入します。
左端のシート1のA1に数字を記入し、シート2以降のA2に数字を記入します
    • good
    • 2
この回答へのお礼

早々のご回答ありがとうございました。

ダサくて申し訳ありません。
せっかく記載いただいたBVAがよくわからなく、、

参考に記載して頂いた「=SUM~~~」を貼り付けて、途中のシート名とか
最後のA2の部分とかを弄ったらうまい事出来ました!さすがです。

お礼日時:2012/09/18 22:08

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

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

教えて!goo グレード

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

人気Q&Aランキング