2016-07-26 12 views
1

私は、次のような単純なExcelスプレッドシートがあります。5.に列Bのチェックで式をチェック

列AIで
  A   B   C 
1  1  
2  2  =IF(A2=A1+1;"ok";"error") 
3  3  =IF(A3=A2+1;"ok";"error") 
4  4  =IF(A4=A3+1;"ok";"error") 
5  5  =IF(A5=A4+1;"ok";"error") 

先ほど入力した数字1を数字であれば常に正しくカウントするので、3の代わりにセルA3の番号4をタイプするとエラーになります。

ただし、3行目を完全に削除すると、セルB4に#REF!が表示されます。

私はそれが#REF!を無視し、代わりにセルB4内#REF!のそれは2 から行きますので、それはもはや正しくカウントされませんので、通常の「エラー」が表示されることを意味し、チェックを継続して十分にこのシステムがスマートにしたいです(細胞A2)~4 (細胞A4)

列Aのセルへの直接参照から独立した列Bの式を作成する方法はありますか?

+0

を入力する必要があるだろう、単に '= ROW()'を使って(そして値をロックする)ことができます。 (もちろん、これは簡単な例です)。 –

答えて

0

間接的に削除される可能性のあるセルを参照できます。 B2に次のように貼り付け、それがそこからB3-B5にコピーします、あなたは間接的な相対参照することにより、直接相対参照

A1 

を置き換える効果で

=IF(A2=INDIRECT("R"&ROW()-1&"C"&COLUMN()-1;FALSE)+1;"ok";"error") 

INDIRECT("R"&ROW()-1&"C"&COLUMN()-1;FALSE) 

"R"と "C"という文字列は、英語以外のExcelバージョンでは "行"と "列"に異なる単語を使用できるため、文字列が異なることに注意してください。ドイツの用途「Zeile」と「Spalte」としては、例えば、ドイツのExcelバージョンで、あなたが本当にAはどんな順序番号が含まれていないことを強制したい場合、余談として

INDIREKT("Z"&ZEILE()-1&"S"&SPALTE()-1,FALSCH)