• ベストアンサー

0以外の余りを表示させたい時に 2003

基本的に余りを表示させたく、 余りゼロの時は除数そのものを表示させたいのですが、 エクセルも数学も疎いのでよく解りません。 整理すると、余りの最小値を1、最大値を除数に制限して表示させたいのです。 ワークシート関数(?)でやるなら =IF(MOD(範囲,除数)=0,除数,MOD(範囲,除数)) が適当なのでしょうか? MODの式を繰り返すのは範囲が長くなるととても見苦しいのですが、 「余りが0以外の時は先の演算の解を呼ぶ」 みたいな事は出来ないか面倒なのでしょうか?

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

  • ベストアンサー
回答No.1

3で割るとする A B -2 =MOD(A1 - 1,3) + 1 -1 =MOD(A1 - 1,3) + 1 0 =MOD(A1 - 1,3) + 1 1 =MOD(A1 - 1,3) + 1 2 =MOD(A1 - 1,3) + 1 3 =MOD(A1 - 1,3) + 1 4 =MOD(A1 - 1,3) + 1 結果 -2 1 -1 2 0 3 1 1 2 2 3 3 4 1 負や0の時のMOD関数の戻り値を見ておきたかった。OKっぽいね

depu2
質問者

お礼

ご意見ありがとう御座います。 適用範囲は正の数限定のようですが、私の目的には合っています。 MODが一つになった事でかなりスッキリ出来ました! 「-1って何だ?別人への回答かな?」と思いましたが、噛み砕いてみて納得、適用してみて感動でした! 独力では十年経っても出てこない発想でした。 数学には頭の柔軟さが重要なんですね。私も発想の転換を心がけます。

その他の回答 (2)

noname#204879
noname#204879
回答No.3

》 =IF(MOD(範囲,除数)=0,除数,MOD(範囲,除数)) 》 が適当なのでしょうか? 「範囲」が被除数が入力されているセルのことならそれでOKですが、 =IF(MOD(被除数,除数)=0,除数,MOD(被除数,除数)) と書くのがよろしいですね(首尾一貫!)。ただし、 =IF(MOD(被除数,除数),MOD(被除数,除数),除数) としても同じことです。 (除数が入力されているセルが 0 または空白のときはどうするかは、別の問題です) 》 MODの式を繰り返すのは範囲が長くなるととても見苦しい 「MODの式」を別列に入力しておけばスッキリした式になるでしょ。 別列を設けるのがイヤなら、「見苦しい」のは止むを得ないでしょ。

depu2
質問者

お礼

回答ありがとう御座います。 「0と表示されない様に先に処理しなきゃ」と思ったのですが、回答の式でもOKなんですね。 式の書き方・・・私は実際除数を式に手入力していたので、脳内完結しておりましたが、 確かにEXCELの入力様式と数学のが混在ですね。 自己中質問になりがちなので戒めます。

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.2

関数でお望みのようなことはできないでしょう。 MOD関数を2回使うをどうしても避けたいのなら次のような式でもよいでしょうが長くなってしまいますね。 =IF(INT(A1/D$1)=A1/D$1,D$1,MOD(A1,D$1)) A1は範囲、D$1は除数

depu2
質問者

お礼

回答ありがとう御座います。 INT関数は以前用いた経験があるのですが、まだ式の意味が飲み込めません。 適用してみると実際とは違って除数が返されるのですが・・・。 カンマとスラッシュも確かめたし、適当にカッコを入れても結果は変わりません・・・。 後学の参考にさせて頂きます。

関連するQ&A