プロが教えるわが家の防犯対策術!

タイトルの件、質問いたします。

下記の画像をご覧ください。
やりたい事は

D列【何日以内】に、下記のとおり表示される関数を組みたいと考えています。

注文までの期間【C列】:00~05⇒5日以内  と表示
注文までの期間【C列】:06~10⇒10日以内 と表示
注文までの期間【C列】:11~15⇒15日以内 と表示
注文までの期間【C列】:16~20⇒20日以内 と表示
注文までの期間【C列】:21~25⇒25日以内 と表示
注文までの期間【C列】:26~30⇒30日以内 と表示
注文までの期間【C列】:31以上⇒30日以内注文なし

ご存知の方、いらっしゃましたら、宜しくお願いします。

【すでに組んである関数】
C3=B3-A3

【エクセルバージョン】
2002、2007

「任意の数字を文字列に変換 例;数字⇒5を」の質問画像

A 回答 (8件)

蛇足ですが


このレポートによって何かアクション(注文がまだの商談に対する営業活動等)が取れますか
このレポートはどの時点で印刷しますか。
・商談日には注文がまだですよね 注文日のセルは空白
・32日目に注文を受け手も30日以内注文なし の期日でよいのでしょうか
・商談日と印刷日(または基準日)との期間計算は必要ないですか
    • good
    • 0

ANo.5のshinkamiです。


済みません式が間違っていました。

C3=IF((B3-A3)>30,"30日以内注文なし",(5*INT((B3-A3)/5)+5) & " 日以内")

表示書式は標準にしてください

※EXCEL2007ではうまくゆきましたが、他のヴァージョンでは確認できません。
    • good
    • 0

こんばんは!


前回とほとんど同様の方法になりますが・・・

D列セルの表示形式をユーザー定義から
0日以内
としておきます。

D2セルに
=IF(C3="","",IF(C3>30,"30日以内注文なし",CEILING(C3,5)))
という数式を入れオートフィルで下へコピーではどうでしょうか?m(__)m
    • good
    • 0

http://kikitai.teacup.com/qa7143744.html
の質問を整理なさいましたね

B列:注文日 A列:商談日 B列>=A列で よろしいですね

C3の式を C3=if((B3-A3)>30,30,5*INT((A2-B2)/5)+5)として

C3の表示形式を#日以内とします。
[C3を右クリック]―[セルの書式設定]―[セルの書式設定]―[表示形式]―[ユーザ設定]
―[右の種類枠に #日以内 ]
    • good
    • 0

私も、ここは エクセルの定番である Vlookup関数と対応表について勉強してもらった方が良いと思います。


http://www.eurus.dti.ne.jp/yoneyama/Excel/kansu/ …
の下の方に、点数と評価の対応表を準備して、点数から評価を表示させる方法があります。
例えば
F列に 日数、G列に対応して表示したい 文字 の対応表を準備します。
D列は =VLOOKUP(C3,F$3:G$9,2)
と簡単な関数でできます。
複雑な関数を応用するより、定番の方法をまず理解してみてください。
将来、条件を変更するとき、ほかに人に説明するときの事まで考えて見てください。
「任意の数字を文字列に変換 例;数字⇒5を」の回答画像4
    • good
    • 0

D3のセルには次の式を入力し下方にオートフィルドラッグします。



=IF(C3="","",IF(C3=0,"5日以内",IF(C3>30,"30日以内注文なし",ROUNDUP(C3/5,0)*5&"日以内")))
    • good
    • 0

 まず、C3セルに次の関数を入力して下さい。



=IF(AND(ISNUMBER(1/DAY(INDEX($A:$A,ROW()))+1/DAY(INDEX($B:$B,ROW()))),INT(INDEX($B:$B,ROW()))>=INT(INDEX($A:$A,ROW()))),INT(INDEX($B:$B,ROW()))-INT(INDEX($A:$A,ROW())),"")

 次に、D3セルに次の関数を入力して下さい。

=IF(ISNUMBER(INDEX($C:$C,ROW())),LOOKUP(INDEX($C:$C,ROW()),{0,6,11,16,21,26,31;"5日以内","10日以内","15日以内","20日以内","25日以内","30日以内注文なし"}),"")

 そして、C3~D3の範囲をコピーして、同じ列の4強目以下に貼り付けて下さい。
    • good
    • 0

先ほど質問した人ではないか?


そこには書いたが、こういう日数帯で対応する文字列(の一部)を変える(決めるのは、日数と返す日数の対応表を作って
VLOOKUP関数のTRUE型を使えば良いのだ。
Googleででも「エクセル VLOOKUP TRUE」で照会し、出てきた記事の例で演習して、自分の場合の表の作り方を勉強すること。
$E$1:$f$5
05
610
1115
1620
21
以下略
以下以上未満に注意してE列の値は1だけ増減にきをつけること。
実際に下記のようなテストをして確かめて使うこと。
A列に整数を入れて
B1に 式 =VLOOKUP(A1,$E$1:$F$4,2,TRUE) 下方向に式複写。
05
15
25
35
45
55
610
710
810
後は文字列「日以内」を&でくっつけておく。
=VLOOKUP(A1,$E$1:$F$4,2,TRUE)&"日以内”
==
区分けの規則性(本件では5づつ区切り)に基づいて、数式を組む手も在る。
初心者はこの方がわかりやすいらしく、ベストアンサーにしている場合が多い。しかし発展性が無いよね。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!