[[20121129092838]] 『シートコピー時にコピー元セル内の数式の参照セル』(ぱる) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『シートコピー時にコピー元セル内の数式の参照セルを変えたいのですが・・』(ぱる)
Excel2007を使っています。

Excelで毎日の業績を記録する”入力”というシートと、1日単位でその業績をまとめたものを表記する”1”というシートを作成しました。
この”1”というシートを月の日数分コピーしたいのですが、コピーされたシート内のセルに入っている数式内に出てくる参照セルを変えたいのですがどなたかご教授いただけないでしょうか?

例としては・・・
”1”というシートのセルB3には=入力!C5+入力!C55+入力!C105のような数式が入ってます。
”1”というシートをコピーし、”2”というシートを作るとき、セルB3の内容を=入力!G5+入力!G55+入力!G105のように参照セルを数行ずらしたいのです。

わかりづらい質問で大変申し訳ございませんが宜しくお願い致します。

ちなみにOSは7のHomeEdition64bit版です。


 シート「1」 ・・・ C列
 シート「2」 ・・・ G列

 シート「3」 ・・・ K列

 と、4列おきとして。

 =SUM(N(OFFSET(入力!$C$1,{5,55,105}-1,(REPLACE(CELL("filename",A1),1,FIND("]",CELL("filename",A1)),"")-1)*4)))

 ※ファイルは一度でも保存のこと。

 (GobGob)


回答ありがとうございます。
今後自分で応用できるように解説をお願いしても宜しいでしょうか?


 @ REPLACE(CELL(・・・),1,FIND(・・・)) は シート名を取得する数式。

 A OFFSET(入力!$C$1,{5,55,105}-1,(@の数式-1)*4)

    OFFSET関数は第一引数を基準に指定した数値分セル参照を移動する。
    (OFFSET(A1,2,1) ⇒ A1を基準に行+2、列+1オフセットしたセルを参照 結果 → B3セル)

    今回は行は 5,55,105行固定なのでココは配列定数で指定。オフセット量なので1を引く。
    列数は@の数式で得たシート名(数字)を元に 4ずつオフセットするように4を掛け算。

    なので 行指定の{5,55,105}を好きな列番号、列指定の *4 の4を好きな数値に変更すると
    好みのセル参照ができるよん。

 B N(Aの数式)
    Aはセル参照で返すんで、これを数値データに置き換え。

 C SUM(Bの数式)  最後に足し算。

 (GobGob)


解説もありがとうございます!

100%やりたいことができました^^
本当に助かりました。またわからないことがあったときはご質問させてください!


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.