• ベストアンサー

IF関数で、ネストがうまくいきません。

=IF(MINUTE(A1)>30,A1,FLOOR(A1,TIME(0,30,0))) ↑ これは、先日、勤務時間で30分以下が切り捨てになる式を教えていただいたものです。 しかし、30分以上59分以下は30分にしなければいけないので、それを入れたくて頑張ったのですが、あれっ???(T_T) どうすればいいのでしょう? よろしくお願いします。

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

  • ベストアンサー
noname#77845
noname#77845
回答No.2

#1です。 =FLOOR(A1,TIME(0,30,0)) これだけで30分以上の時の処理が出来ました。m(_ _)m 多分最初の質問の時に30分以上の時を指定しなかったから、質問にあるような式を得られたのだと思いますが、0分・30分に丸めるなら、これだけで完了です。

oobankoban
質問者

お礼

回答ありがとうございます。 できました。 なんだか嬉しいんだけど・・・不思議。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (1)

noname#77845
noname#77845
回答No.1

30分以下を切り捨てに出来るんだから、30分より大きい時は切り捨てた値に30分足してやればOK。 =IF(MINUTE(A1)>30,FLOOR(A1,TIME(0,30,0))+MINUTE(30/24/60),FLOOR(A1,TIME(0,30,0))) で、どうでしょう? FLOOR(A1,TIME(0,30,0)) で切り捨てできてるんだから、30分分の MINUTE(30/24/60) を加えているだけですけど…。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • IF関数について

    どういうIF関数にすればいいのかわからないので教えて下さい。 ・50以上の場合は0.8掛け ・50以下の場合はマイナス10 ・10以下の場合は0 ・小数点以下は切り捨て 上記を満たす式を教えて下さい。

  • if関数のネストについて教えてください

    エクセル2003です 関数につい勉強している前期高齢者です。 IF関数のネストについて教えてください。 A1 りんご A2 みかん A3 かき  と入力する表があります。 B1せるに A3が入力されているときはA3 A3が空白のときはA2 A3とA2が空白の時はA1 と表示させたいのですが =IF(A3="",A2,IF(AND(A3="",A2=""),A1,A3)) =IF(A3="",A2,IF(A2="",A1,A3)) の式では A3とA2が空白のときに「0」となり 「りんご」と表示されません。 A3とA2が空白のときに「りんご」と表示する 式の作り方を教えてください

  • EXCEL IF関数内で共通の条件式をまとめる方法

    初めてご質問させていただきます。よろしくお願いいたします。 EXCELで以下のIF関数を使用しています。 U1セルには=NOW()関数で時間が表示されています。 要するに、9時15分から11時までの間で、15分間隔で大小関係を比較するセルを変更して、その結果に応じてA判定、またはB判定、または空欄のいずれかが選択されるIF関数になっています。 お伺いしたいことは以下の2点です。 (1) 各条件式で共通部分が必ず3つあります。最初のA判定とB判定の条件式を見ていただきたいのですが、HOUR($U$1)=9,MINUTE($U$1)>=15,MINUTE($U$1)<30が共通です。この共通している部分を くくり出して一つにまとめる事はできないのでしょうか? (2) 以下のIF関数をもっと短くエレガントに記述することはできなのでしょうか? 以上2点、ご回答よろしくお願いいたします。 =IF(AND(HOUR($U$1)=9,MINUTE($U$1)>=15,MINUTE($U$1)<30,C3>B3),"A",IF(AND(HOUR($U$1)=9,MINUTE($U$1)>=15,MINUTE($U$1)<30,C4<B4),"B",IF(AND(HOUR($U$1)=9,MINUTE($U$1)>=30,MINUTE($U$1)<45,D3>C3),"A",IF(AND(HOUR($U$1)=9,MINUTE($U$1)>=30,MINUTE($U$1)<45,D4<C4),"B",IF(AND(HOUR($U$1)=9,MINUTE($U$1)>=45,MINUTE($U$1)<=59,E3>D3),"A",IF(AND(HOUR($U$1)=9,MINUTE($U$1)>=45,MINUTE($U$1)<=59,E4<D4),"B",IF(AND(HOUR($U$1)=10,MINUTE($U$1)>=0,MINUTE($U$1)<15,F3>E3),"A",IF(AND(HOUR($U$1)=10,MINUTE($U$1)>=0,MINUTE($U$1)<15,F4<E4),"B",IF(AND(HOUR($U$1)=10,MINUTE($U$1)>=15,MINUTE($U$1)<30,G3>F3),"A",IF(AND(HOUR($U$1)=10,MINUTE($U$1)>=15,MINUTE($U$1)<30,G4<F4),"B",IF(AND(HOUR($U$1)=10,MINUTE($U$1)>=30,MINUTE($U$1)<45,H3>G3),"A",IF(AND(HOUR($U$1)=10,MINUTE($U$1)>=30,MINUTE($U$1)<45,H4<G4),"B",IF(AND(HOUR($U$1)=10,MINUTE($U$1)>=45,MINUTE($U$1)<=59,I3>H3),"A",IF(AND(HOUR($U$1)=10,MINUTE($U$1)>=45,MINUTE($U$1)<=59,I4<H4),"B",""))・・・括弧省略

  • IF関数について

    IF関数で時間を「切り上げ」とか「切り捨て」したいのですが、 できるのでしょか? 例えば 12:10と入力した場合、12:15と表示したり(切り上げ) 10:37と入力した場合、10:30と表示したり(切り捨て) と言う感じにしたいです。(15分単位で)

  • ネストのIF関数について、ご教授下さい。

    勤務表の実働時間の計算について伺います。こちらの過去の質問を見て、作ったIF関数がうまく機能しません(涙)。 タイムカードをもとに、表を作りました。退出時間から出勤時間と休憩時間をひくのですが、一部カードの押し忘れがあり、そこは空欄にしてあります。 問題はその部分で、出勤、退出どちらかに空欄がある場合は、実働時間も空欄にしたいので、 =IF(退出時間>出勤時間,退出時間-出勤時間-休憩時間,IF(退出時間<出勤時間,24+退出時間-出勤時間-休憩時間,IF(出勤時間="","",IF(退出時間="","")))) という関数をいれました。 しかし、この「空欄にする」という設定が働かず、たとえば出勤を押し忘れ、休憩なしで22:00に退出したとすると22時間労働、となってしまいます。 どこに問題があるのでしょうか?ご教授下さい。

  • IF関数

    A1に平均値で示した数値(0.0001~99.9999)を、下の1~9でカテゴリー分けしたいのです。 1.0.5時間未満 2.0.5時間以上~1.0時間未満 3.1.0時間以上~1.5時間未満 4.1.5時間以上~2.0時間未満 5.2.0時間以上~2.5時間未満 6.2.5時間以上~3.0時間未満 7.3.0時間以上~3.5時間未満 8.3.5時間以上~4.0時間未満 9.4.0時間以上 IF関数でしたのですが、下の式の通り8項目しか入らず良い方法がありましたらおしえてください。よろしくお願いします。 =IF(A1<0.5,"1.0.5時間未満",IF(A1<1,"2.0.5時間以上~1.0時間未満",IF(A1<1.5,"3.1.0時間以上~1.5時間未満",IF(A1<2,"4.1.5時間以上~2.0時間未満",IF(A1<2.5,"5.2.0時間以上~2.5時間未満",IF(A1<3,"6.2.5時間以上~3.0時間未満",IF(A1<3.5,"7.3.0時間以上~3.5時間未満",IF(A1<3,"7.3.0時間以上~3.5時間未満"))))))))

  • エクセル 複雑なIF関数を避けたいのですが…

    入力した数値を一定のルールで丸めて出た数値を別のセルに返したいのですが、 ●1以上10,000未満の場合 【1の位】切り捨て【10の位】1~5の場合5、6~9の場合0で100の位に1プラス【100の位以上】そのまま ●10,000以上100,000未満【1の位】切り捨て【10の位】切り上げ【100の位以上】そのまま ●100,000以上1,000,000未満【1の位】切り捨て【10の位】切り上げ【100の位】切り上げ【1000以上の位】そのまま ●1,000,000以上10,000,000未満【1の位】切り捨て【10の位】切り捨て【100の位】切り上げ【1000以上の位】そのまま ●10,000,000以上【1の位】切り捨て【10の位】切り捨て【100の位】切り捨て【1000の位】切り上げ【1万以上の位】そのまま といったルールなのです。 CEILINGやIF関数を使ってと思ったのですが、一つのセルに7個以上は使えないし… 一度やってみたら =IF(T1="","",IF(V1="","",IF(V1>T1,"",IF(LEN(V1)<=3,ROUNDUP(A1,-LEN(V1)+2),IF(LEN(V1)=4,IF(LEN(ROUNDUP(A1)-50)>4,ROUNDUP(A1),(ROUNDUP(A1,-2)-50)),ROUNDUP(A1,-(LEN(V1)-3))))))) 1こんなに長くなってしまいました。 もっとシンプルでできないものでしょうか?

  • IF関数 複数

    IFを使った複数式について教えてください。 A1が”コード1”の時、40%以上は A2(利益)×10%、 39%以下は A2(利益)×5% ↓ =IF(A43="","",IF(A43="コード1",IF(H43<40%,G43*10%,G43*5%))) 上記式でできたのですが、コードが4つまであり そのコードごとに 40%以上は A2(利益)×10%、 39%以下は A2(利益)×5% としたいです。 複数の組み合わせはどのようにしたらよいのでしょうか?

  • IF関数のネスト

    IF関数のネストについての質問です。 例えば、D1のセルに日付が入力してあり、 A4のセルの日付の月がD1の月と同じならば、 「今月」違うなら「エラー」と表示させたいのですが、 数式は解るのです。↓ =IF(MONTH($D$1)=MONTH(A4),"今月","エラー") ですが入力のしかたが解らないのです。 まず、fxの関数の挿入からIFを選択、論理式の部分に、 fxの左にある下矢印からMONTHを選択、 シリアル値はD1を絶対参照。 このあとがどうしていいのか解らないのです。 どなたか教えてください。 宜しくお願いします。

  • IF、ORなどの関数について

    ある数値を分類わけする式が作りたいのですが ぜんぜん分かりません。誰か助けてください。 セルA1の値が 100以上ならA、100以下ならBを返す式を下記のように作ってみました。 =IF(OR(A1=100,OR(A1>100,)),"A","B") これに 100以上200以下はCという情報を入れたいのです。 どうやればいいですか?? 誰か教えてください。 困ってます。 これで言ってる意味伝わるのでしょうか?それもとても不安です。。。。

このQ&Aのポイント
  • 富士通FMVのn90f3gnを購入していますが、adobeイラストレータのGPUパフォーマンスを使用する際、AMD RADEON GRAPHICSの内臓メモリーが512Mしか認識されずに使用できません。
  • 内臓メモリー512Mは仕様なのか、設定で変更できるのか、疑問です。
  • adobeに確認したところ、GPUパフォーマンスには1GBのメモリーが必要とのことです。
回答を見る