• ベストアンサー

関数の連続コピーのしかた

 初めまして、よろしくお願いします。  関数式 =IF(Sheet1!H1=Sheet1!C1,Sheet1!D1,"") をINDEX またはINDIRECT で指定位置がセルの挿入されてもH1、C1、D1の位置を変更しないように変え、ROW(この関数か?)で変えた関数式をマウスでドラックして下に連続してコピーされていくようになおしたいのですが、どなたかよろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • zap35
  • ベストアンサー率44% (1383/3079)
回答No.2

>下に連続してコピーされていくようになおしたいのですが 質問がよく分かりませんが、式をコピーした二行目は  =IF(Sheet1!H2=Sheet1!C2,Sheet1!D2,"") になればよいのですか? 1行目の式は =IF(INDIRECT("Sheet1!H"&ROW(A1))=INDIRECT("Sheet1!C"&ROW(A1)),INDIRECT("Sheet1!D"&ROW(A1)),"") で良いと思います。これなら下方向にコピーすれば参照する行も変わりますし、Sheet1に行挿入しても参照位置は変わりません

kei__2000
質問者

お礼

 回答ありがとうございます。大変満足する結果になりました、助かりました。

その他の回答 (2)

  • imogasi
  • ベストアンサー率27% (4737/17070)
回答No.3

昨日も似た関連の質問をした、おなじ方ですね。私はそこで =INDIRECT("Sheet1!A3") のように""で囲んで、定数として書き込めば、式を入れているセルより、上部行の「行「挿入」「削除」に影響なかろうと答えました。 ーー それを列全体に設定するには =INDIRECT("Sheet1!A3") =INDIRECT("Sheet1!A4") =INDIRECT("Sheet1!A5") ・・ と変化させねばならないが、これを式の複写でやれないかということだと思います。 -- ””で囲んだ上記例以外の、 A3 や $a$3 は行の挿入でどちらも 3の部分が増減します(これで普通は好都合です。質問のケースが特殊です。)。ここを他の何かに置き換えても行に関係付けたものは変化してしまいます。 ーー VBAでやるしかありません。 あきらめてください。 ーー とりあえずの結論ですか、「できる」というご回答が出れば、私は大恥かきますが、出れば、私も勉強「になるので、期待してます。 まあしかし、出ないような気がするが。

kei__2000
質問者

お礼

 回答ありがとうございます。何とかこちらで右往左往してみたいと思います。

回答No.1

=IF(Sheet1!$H$1=Sheet1!$C$1,Sheet1!$D$1,"")

kei__2000
質問者

お礼

 回答ありがとうございました。 連続してのコピーがうまくいきませんでしたが、参考にさせて頂きたいと思います。

関連するQ&A