• ベストアンサー

エクセル関数について教えてください。

エクセル関数について教えてください。 例えば、ROUNDDOWN関数で(A1,0)と組んだとして、A1が未入力だった場合には VALUE!と表示されますが、0:00と表示させることは出来ますか? 一応、IFと組み合わせようとしましたが、関数の組み合わせがおかしいというメッセージが表示 されて分かりません。 IFだけを複数組み合わせるのはやった事ありますが、別々の関数を組み合わせる事に関しての知識が なく、困っています。 どんな些細なことでも結構ですので、教えてください。 よろしく御願いします。

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

  • ベストアンサー
  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.6

 「0:00」と表示させるのは、A1に何も入力されていない場合のみで良いのでしょうか。  A1に文字が入力されていたり、A1がエラーである場合には、どのような表示にされたいのでしょうか。  例えば =IF(ISNUMBER(A1),ROUNDDOWN(A1,0),"0:00") という式ならば、A1に数値(0を含む)が入力されている場合には、その数値の小数点以下を切り捨てた値を表示します。  そして、A1に何も入力されていない場合と、文字やスペースが入力されている場合、それとA1がエラーである場合には、「0:00」が表示されます。  式の中に ISNUMBER(A1) という部分がありますが、これは、ISNUMBER関数と言って、( )の中に数値データが入力されているのか否かを判定する関数です。  この場合には、A1セルの中に数値が入力されている場合には、判定はTRUE[正しい]となり、IF関数の[真の場合]が表示され、それ以外の場合には判定はFALSE[誤り]となり、[偽の場合]が表示されます。  同様に、他の回答者の方々の数式にある ISBLANK(A1) という部分は、ISBLANK関数と言って、( )の中に指定されているセル等に、何もデータが入力されていないのか否かを判定する関数です。  この時注意が必要なのは、A1には何も入力されていないように見える場合であっても、実際にはスペース(空欄)が入力されている場合もあります。  スペースが入力されている事と、何も入力されていない事は、同じではありません。  スペースが入力されている場合には、 ISBLANK(A1) の判定はFALSE[偽]となりますし、数値以外のデータが入力されているのですから、 ROUNDDOWN(A1,0) は計算する事が出来ないため、エラー値#VALUE!が表示されます。  尚、「0:00」を表示させるのではなく、何も表示しないようにするのであれば、数式の中の"0:00"の部分を、""に換えれば良いです。(これは、他の回答者の方々の数式に関しても同様です)

その他の回答 (5)

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

例えばB1セルに=ROUNDDOWN(A1,0)と入力してから、B1セルを右クリックして「セルの書式設定」から「表示形式」タブで分類に「ユーザー定義」を選び、種類の窓に h:mmと入力することで、A1セルが空のときはB1セルには0:00が表示されます。 しかし、A1セルにどんな数値を入力してB1セルにその値を表示させるのでしょう。A1セルに例えば23:45:15(23時45分15秒の意味です)と入力してもB1セルの表示は0:00のままです。 A1セルに時刻や日付を入力してもB1セルの表示は0:00のままですね。その原因はA1セルに入力した時刻や日付はシリアル値としてパソコンでは扱われます。24時間以内の時刻は小数点以下の数値となり、1日以上の日付は整数となります。ところでそのような値をROUNDDOWN(A1,0)で整数部分だけのシリアル値に変換していることになります。そこでセルの表示形式で時:分のような表示に使用とすれば小数点以下の数値はない状態のシリアル値ですから0、すなわちセルの表示は0:00のままです。 時間を扱っている中でROUNDDOWNで整数部分だけにすることは日にちの計算では使うこともあるでしょうが、一般には無意味なことですね。

  • srxmk3pro
  • ベストアンサー率53% (527/980)
回答No.4

ROUNDDOWN関数でエラー値#VALUE!が返されるのは対象が文字列の場合です。 本当にA1は未入力なのでしょうか? 本当に未入力なら「0」がかえって来るような気がします。 本当にブランクなら =IF(ISBLANK(A1)=TRUE,"0:00",ROUNDDOWN(A1,0))

  • tadagenji
  • ベストアンサー率23% (508/2193)
回答No.3

=ROUNDDOWN(A1,0) の式は循環式になり、A1にはエラーで入らないでしょう。 B1に式として入れてA1が空白ならばというのなら、 =IF(A1="","0:00",ROUNDDOWN(A1,0)) で可能です。

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

例えば次のような式にします。 =IF(A1="","",ROUNDDOWN(A1,0)

  • zongai
  • ベストアンサー率31% (470/1474)
回答No.1

=IF(ISBLANK(A1),"0:00",ROUNDDOWN(A1,0)) A1が空欄なら「0:00」を表示し、そうでなければA1切り捨て。 「0:00」が書式で時間として表示しているなら、「"0:00"」→「0」でもいいですね。

関連するQ&A

  • エクセル(IF関数)について

    IF関数について教えてください WINDOWS7を使っています。 エクセル2010で使ったIF関数が、2003や2007では機能しません。 そんなことがあるのでしょうか? MOD、 VALUE、 LEFT、 RIGHT等 簡単な組み合わせなのですが・・・。 もちろん同じように入力しています。 よろしくお願いします。

  • Excelの関数(切捨て)の使い方

    ExcelのROUNDDOWN関数で、0.0から9.9までを、小数第1位で切捨てた結果を表にしました。対象となる数字を直値で入れると正しくなるのですが、0.0から0.1刻みで加算する算式で入力すると、6.0,7.0,8.0,9.0の切捨て結果が、それぞれ、5.0,6.0,7.0.8.0となってしまいます。関数の使い方がおかしいのでしょうか。作成した表が添付できなかったので、文章で説明すると、次の通りです。A1=0.0、A2=A1+0.1、A3=A2+0.1----、B1=ROUNDDOWN(A1,0)、B2=ROUNDDOWN(A2,0)、B3=ROUNDDOWN(A3,0)---です。Excelの関数に詳しい方、ご教示お願いします。

  • エクセルの関数について・・・。

    こんにちは。エクセルの関数についての質問なんですが、ROUNDDOWN関数とIF関数、VLOOKUP関数を初心者に教えたいと思うのですが、どうやって説明すれば分かってもらえるでしょうか?? なにかいい教え方がありましたら教えてください。 おねがいします。

  • エクセル関数についての質問です。

    エクセル関数についての質問です。 ROUNDDOWN関数とIF関数1つのセルで使用したいのですが、どちらかしか適用されません。 ROUNDDOWN・・・割り算をして、その答えを小数点第二位で切り捨て。 IF・・・割り算をするセルが空欄の場合、エラーを表示させない。 以上を両立させたいのですが、ただ改行させただけではダメらしいです。 どなたかご教授よろしくおねがいします。

  • エクセルIF関数について

    エクセルIF関数について お世話になっております。エクセルのIF関数について教えてください。 例えばA1に任意で入力する数字があるとします。 このA1の数字が4以下なら○、10以上なら×、5-9の間なら何も表示しないというような関数を組みたいのですが、どなたか教えていただけないでしょうか? たぶん、IF関数だと思いますが、もし違うならその関数を教えてください。 よろしくお願いします。

  • エクセルVBAではRounddown関数はつかえないのでしょうか?

    Excel2003SP2でVBAを使っています。 AAA = RoundDown(Range("A1"), 0) と入力してコンパイルすると 「コンパイルエラー SubまたはFunctionが定義されていません」 と表示されます。 エクセルVBAではRounddown関数は使用できないのでしょうか? それとも私の記述が何か間違っているのでしょうか

  • エクセル IF関数について

    エクセルのIF関数で困っています。 A1のセルは、他のセル(B1)から飛ぶような設定をしている(=B1) B1に入力しない事があるで、A1の「0」に表示しないようにユーザー設定で「#,##0;"△ "#,##0; 」としている。 A2のセルには、A1に文字が表示されたときのみ「日」と表示するようにIF関数を入れた。「=IF(A1="","","日")」 しかし、A1に何も表示されていないのに、「日」が表示されてしまう。 試しに「=IF(A1="0","","日")」としたが、これでも「日」が表示されてしまう。 このような場合、IF関数はどうすればいいのでしょうか。 説明が下手ですいません。 どうか教えてください。

  • EXCELの関数、INT関数とROUNDDOWN関数の使いわけ

    EXCELの関数、INT関数とROUNDDOWN関数はどういうときに使い分けをするのでしょうか?教えてください。 =INT(8.9)では表示は8 =ROUNDDOWN(8.9,0)では表示は8 と同じ結果が得られますよね。 どういった時に使い分けをするのでしょうか?

  • Excelのif関数を使ったのですがうまくいきません。

    Excelのif関数を使ったのですがうまくいきません。   | A | B | C | D | E ----------------------- 1 | A | A | A | A | 5 2 | B | A | A | B | 4 3 | C | C | A | C | 2 のようにA1~D4のセルに入力されたA,B,C の組み合わせによって E5のセルに1~5の数字を入れていきたいのですがAAAA~CCCCの組み合わせが 15通りあってif関数では入れ子ができません。 AAABもAABAも同じと判断させて1~5の数字を自動的に入力させたいのですが 何かいい方法はないでしょうか。 教えてください。

  • エクセルIF関数について

    エクセルIF関数について A2セルにA1セルが空白なら空白。8:00ならば、8:00。8:00>ならA3セルに(そのままの値を)表示せよ。 という関数を入れたいのですが、どの関数をどのように定義すれば良いのかわかりません。 IF関数かな?と思ったのですが、IF関数で偽のときは、「別のセルに入力せよ」などというような定義って出来るのでしょうか? どなたか教えてください。

専門家に質問してみよう