Excelで値をコピーすると、隣の列にある数式が変更されてしまう
Excel2007で、2003以前でなるのかは試していないのですが…
値を切り取って違うところに貼り付けすると、隣の列の計算式の参照先が変化してしまい困っています。
分かり辛いですが…
sheet1とsheet2があります。
sheet1にはデータが入っており、sheet2でsheet1のデータを集計しています。
sheet1には
C列に名前、D列にデータ、E列にデータが入ってます。
sheet2には
B列に名前が列挙してあります。sheet1内の検索用です。
そしてC列に
=SUMIF(sheet1!C$1:C$150, sheet2!$B1, sheet1!E$1:E$150)-SUMIF(sheet1!C$1:C$150, sheet2!$B1, sheet1!D$1:D$150)
という計算式が入っています。
sheet1のC列の中で、名前(sheet2!$B1)が一致するE列の合計値からD列の合計値を引いた結果を集計しています。
そして、人数分この式がコピーされています。
他には見た目的な装飾以外には特に何も書かれていません。
ここで、sheet2の検索用の名前が減ったり、順番が移動したので、切り取って違う位置(同じ列です)に張り付けました。
例えば、5人分の名前を切り取って一つ上の行に張り付けします。
思いとしては、となりの計算式は当然変化せず再計算されて、計算結果も上の行に一つ分ずれる予定だったのですが、結果としては何故か数式が変化して、(sheet2!$B)の部分が移動した名前列を追いかけるように1個分変化してしまいます。(移動した5個分だけが数式変化します)
当然名前と計算結果の行がずれてしまい、具合が悪いです。
$で絶対参照にすると、数式をコピーした際に行移動した分が変化しないので、結局数式を1個1個変更することになるので面倒です。
かと言って、R1C1形式で相対参照にすれば解決する可能性もありますが(試してません)、多分R1C1形式に慣れて無い人が使えば混乱してしまう気がするので、なるべく避けたいです。
コピーして貼り付けする分には数式は変化しないので、とりあえずはそれで対処してます。
(コピーして貼り付けした後に不要な名前を削除)
どなたか、解決方法か、こういう仕様である利点、もしくは自分の間違いを教えていただけないでしょうか。