• 締切済み

Excelエラー表示######を表示させない方法

下記の問題についてご指導を頂ける方、よろしくお願い致します。 使用機種等は、Windows 8.1 Excel 2013 を使用しています。 説明が長文で申し訳ありません。 作成中のエクセルの表で説明を求めるのが筋ですが、OKWaveで表示する方法が判らず、理解し難いでしょうがよろしくお願い致します。 従業員(インドネシア人)の定時労働時間・時間外時間・休日労働時間・労働日数をエクセルの表からリンクさせ、数値を求める表を作成したのですが、日によっては時間外時間がエラー表示「######」が表示されました。 セル幅が狭くて表示されるのではありません。 各列のAは日、Bは曜日、C:D(セルを結合)は始業時刻、Eは~(から)、F:G(セルを結合)は終業時刻、H:I(セルを結合)最低時間、J:K(セルを結合)は休憩時間、L:M(セルを結合)は実働時間、N:O(セルを結合)は時間外時間 を示します。 エクセルの表で、各列の該当日の始業時刻・終業時刻・最低時間・休憩時間(ここまでは手入力)で計算式は、・実働時間・時間外時間 のみ簡単な計算式が入れています。 計算式は、実働時間に =F8-C8 、時間外時間に =L8-H8-J8 当然各行にも、該当行の公式が入っています。 日・曜日・Eの~(から)は最初から入力しておき、修正されては困るセルは保護してあります。 実際の入力例は、下記のとおりです。 1 月 7:00 ~ 11:00 4:00 0:00 4:00 ###### 2 火 5:30 ~ 15:30 8:00 1:00 10:00 1:00 3 水 5:10 ~ 15:00 8:00 1:00 9:50 0:50 時間外時間が、0:00のように表示される方法をご指導下さい。

みんなの回答

  • bunjii
  • ベストアンサー率43% (3589/8248)
回答No.5

>時間外時間が、0:00のように表示される方法をご指導下さい。 エラーの原因は最低時間を手入力しているため時間外時間の計算値に微小な計算誤差が生じているようです。 計算過程と結果は下記のようになり、微小の計算誤差が生じています。 =L8-H8-J8 → ("11:00"-"7:00")-"4:00"-"0:00" → -2.77556E-17 最低時間のセルに下記の数式を入力することで誤差をキャンセルできます。 H8=MIN(F8-C8,"8:00"*1) 管理システム上で最低時間を手入力しなければならない場合は時間外時間の計算を下記の数式に置き換えてください。 L8=MAX(L8-H8-J8,0)

  • msMike
  • ベストアンサー率20% (363/1775)
回答No.4

簡単です。 式 =L8-H8-J8 を =ROUND(L8-H8-J8,5) に変更してみてください。 ついでに、 式 =F8-C8 も =ROUND(F8-C8,5) にしておきませう。 理由?知りたい? Excel は、簡単に言えば、「小数点の計算には弱い」から、なのです。

kakitaka0331
質問者

お礼

早速のご指導ありがとうございました。 教えのとおりに修正しましたら、###### が消えて求めたい数値が表示されました。 これによりそれぞれのリンク先に数値が飛び、賃金台帳がエラーも表示されずに作成出来ました。 本当にありがとうございました。 今後のご活躍をお祈り致します。

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

 何故セルを結合しているのかは存じませんが、その場合は以下の様にされると宜しいかと思います。  まず、L8セルに次の様な関数を入力して下さい。 =IF(COUNT($C8,$F8)=2,IF(AND($C8>=0,$C8<1,$F8>=0,$F8<2),IFERROR(TEXT($F8-SUM($C8,$J8)+1.000001,"h:m")+0,""),""),"") 或いは =IF(COUNT(INDEX($C:$C,ROW()),INDEX($F:$F,ROW()))=2,IF(AND(INDEX($C:$C,ROW())>=0,INDEX($C:$C,ROW())<1,INDEX($F:$F,ROW())>=0,INDEX($F:$F,ROW())<2),IFERROR(TEXT(INDEX($F:$F,ROW())-SUM(INDEX($C:$C,ROW()),INDEX($J:$J,ROW()))+1.000001,"h:m")+0,""),""),"")  次に、H8セルに次の様な関数を入力して下さい。 =IF(ISNUMBER($L8),MIN($L8,"8:0"+0),"") 或いは =IF(ISNUMBER(INDEX($L:$L,ROW())),MIN(INDEX($L:$L,ROW()),"8:0"+0),"")  次に、H8:I8のセル範囲をコピーしてH9:I9以下に貼り付けて下さい。  次に、N8セルに次の様な関数を入力して下さい。 =IF(ISNUMBER($H8),TEXT($L8-$H8+0.000001,"h:m")+0,"") 或いは =IF(ISNUMBER(INDEX($H:$H,ROW())),TEXT(INDEX($L:$L,ROW())-INDEX($H:$H,ROW())+0.000001,"h:m")+0,"")  次に、L8:O8のセル範囲をコピーしてL9:O9以下に貼り付けて下さい。  以上です。  尚、式の中でINDEX(を使っている方の関数はどの行に入力しても構わないのですが、INDEX(を使っていない方の関数は必ず8行目のセルに入力する様にして下さい。

kakitaka0331
質問者

お礼

昨日に引き続き、丁寧な説明・関数を記入して頂き本当にありがとうございました。 これから時間をかけて作業を実施しようと考えておりますので、少し時間をください。 また、大変に失礼かと思いますが貴方様のご指導のあとに msMike 様よりの説明がありましたので、実施してみましたら######が消えて、求める数値が出て、リンク先に連動しましたので、当面はこれにて実施して見ようと考えております。 後程、時間をかけて貴方様の関数を入力して実施してみたいと考えております。 本当に昨日・本日と貴重な時間を頂戴し、ありがとうございました。 今後益々のご活躍をお祈り致します。 一層の向寒の折りお身体にはくれぐれも注意をされて下さい。

  • m_and_dmp
  • ベストアンサー率54% (974/1797)
回答No.2

前回の続きですね? ######## と表示されているセルの書式を「標準」に設定して、どのような値が表示されているか確認してください。マイナスになっていませんか? まずはそこからです。 前回もそのように申し上げましたが、やっていませんね? それをやってみたくないということでしたら、 ######## に記述されている数式を次のように変更してください。 =ABS(xxxxxxxxxxxx) xxxxxxxx は、もともと######## のセルにに記述されている数式です。

kakitaka0331
質問者

お礼

昨日・本日とご指導を頂きありがとうございました。 昨日・本日のご指導のとおり時間をかけて実施して見ようと考えております。 また、大変に失礼かと思いますが、msMike 様の方法で実施して見ましたら、######が消え数値も間違いなく、必要箇所にリンクし求めている数値が求められましたので、後日貴方様の方法で実施して見たいと考えております。 本当に昨日・本日とご教授いただきありがとうございました。 今後益々のご活躍をお祈り致します。

  • aokii
  • ベストアンサー率23% (5210/22062)
回答No.1

セル幅を大きくしてみてください。

kakitaka0331
質問者

お礼

ご指導ありがとうございました。 セル幅を広くする件では解決しない問題ですので、ありがとうございました。

関連するQ&A

  • Excelのエラー表示に対し正規の表示を求む

    ご存知の方、ご指導の程よろしくお願い致します。 使用機種等は、Windows 8.1 Excel 2013 を使用しています。 作成中のエクセルの表で説明を求めるのが筋ですが、OKWaveで表示する方法が判らず、理解し難いでしょうがよろしくお願い致します。 従業員の定時労働時間・時間外時間・休日労働時間・労働日数をエクセルの表からリンクさせ、数値を求める表を作成したのですが、日によっては(8)の時間外時間にエラー表示「######」が表示されました。 各列は(1)は日、(2)は曜、(3)は始業時刻、(4)は終業時刻、(5)は最低時間、(6)は休憩時間、(7)は実働時間、(8)は時間外時間 を示します。 (1) (2) (3)  (4)  (5)  (6)  (7)  (8) 1 月 7:00 11:00 4:00 0:00 4:00 ###### 2 火 5:30 15:30 8:00 1:00 10:00 1:00 3 水 5:10 15:00 8:00 1:00 9:50 0:50 (8)の時間外時間が、0:00のように表示される方法をご指導下さい。 0:00等に表示されれば、リンクされて必要な数値が求められるのですが。 参考までに、 インターネットで「Excelエラーの原因と対策まとめ」から調べたのですが、 原因は 日付や時刻がマイナスとなる場合 対策は 「1904年から計算する」という設定にすると、日付や時刻もマイナス表記が可能になります。 操作方法は 「ファイル」タブ→「オプション」→「詳細設定」→ 「1904年から計算する」チェック→「OK」の流れで設定可能です。 設定したファイル内で日付・時刻がすでに入力済みの場合、日付・時刻の値が変わってしまいますので、都度正しい内容に修正してあげる必要が別途あります。

  • エクセルで勤務時間計算における条件式をつくりたいのですが…

    エクセルでタイムシートを作成しています。2つ教えて頂きたくお力添えお願い致します。 (1)下記 *例えば部分の【カッコ内】 8時間以上(8時間までが時間内)の労働になると、時間外の欄に8時間を越える時間数を表示することは可能でしょうか? 区分:出社、退社、始業時間、終業時間、休憩、時間内実働時間、時間外実働時間(8時間を越えた分) があります。15分きざみでの計算です。 *例えば 出社9:16 退社20:47 始業9:30 終業20:45 休憩1:30【時間内8:00 時間外1:45】 出社9:18 退社18:05 始業9:30 終業18:00 休憩1:30【時間内7:00 時間外 】 (2)時間を入力する際、テンキーで4桁の数字ex.1800と入力すれば、18:00と表示する方法はありますか? 1800と入力すると0:00になってしまいます。 よろしくお願いします。

  • 【エクセル】休息時間の計算

    休息時間の計算をしていて以下のようなものを計算したいのですが、 その最終目標の計算式に到達することができません。 参考に画像を添付いたします。ご教授ください。 -------------------------------------------- 表示したいのは「休息時間」の部分です。 1)前日の終業時刻、当日の始業時刻の両方が空欄の場合 →「休」と表示 2)前日の終業時刻が空欄で当日の始業時刻に値が入力されてる場合 →24時間+(当日0:00から当日始業時刻までの時間) の時間 3)当日の始業時刻が空欄で前日の終業時刻に値が入力されてる場合 →24時間+(前日終業時刻から当日0:00までの時間) の時間 4)前日の終業時刻、当日の始業時刻の両方とも値が入力されている場合 →(当日の始業時刻)-(前日の終業時刻)の時間 2)と3)をどうしたら良いかわからないので、 現在暫定的に2)か3)に該当する場合は「24時間以上」と表示するようにしており、 例えばセルE3には以下のような計算式を入れております。 =IF(AND($D2="",$C3=""),"休",IF(OR($D2="",$C3=""),"24時間以上",$C3-$D2)) 以上 宜しく御願い申し上げます。

  • エクセルで時間入力10:30の:コロン省略したい。

    始業と終業の時間を入力し勤務時間を計算しております。 始業時間はA1に8:30 終業時間はB1に17:00と入れております。 コロン(:)を省略できるととても楽になります。8:30は830と入力、17:00は1700と入力して 表示にはコロンが入り、セルの書式としては時刻と認識し時間計算が出来ればありがたいです。 よろしくお願い致します。

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

    エクセルについて教えてください。 時間外の勤怠表を作成しています。 始業・終業・休憩を入力すると、早出出勤・平日時間外・平日深夜が自動計上するように 作りました。 そこで問題があるのですが・・・ 始業が8:00、終業が17:30、休憩が1:00とした場合、実務労働時間は8:30となります。 そして通常の始業時間は8:30ですので早出出勤に0:30と表示するように作りました。 そして、当然、平日時間外と平日深夜は0:00とるはずなのですが、平日時間外だけ#########(計が負となった場合に表示されるメッセージ)となります。 ROUNDDOWNを同じセルに組み合わせようとしましたが、当セルを指定すると循環参照メッセージが表示され計算出来ませんし、かといって上記の場合だけ他のセルにROUNDDOWNを組んでも、平日時間外だけ2列作ることになり、最終的な合計が正確に計上されません。 平日時間外に組んだセルは以下の通りです。 =IF(O6=$AM$3,"0:00"*1,IF(O6>$AM$3&J6>=$AM$9,O6-$AM$3-P6,IF(J6<$AM$9,O6-$AM$3-R6-P6,""))) ・O6 <- 終業の「時」 ・J6 <- 終業時間(時・分を別セルで入力し、それをTIMEとTEXTで組んだ関数で表示しています) ・$AM$3 <- 8:00(セルに手打ちで入力したものです。) ・$AM$9 <- 22:00 ※表示形式はすべて[h]:mmとしています。 どんな些細なことでも構いませんのでご回答をよろしく御願いします。

  • エクセルでの時間外労働の時間の算出

    (各セルには hh:mm形式で時刻を入力) 例えば a1セルに始業時刻9:00、b1セルに休憩時間1:00、c1セルに終業時刻23:30とした場合、 d1に 9:30~午後10時(22:00)までの時間のうち 休憩時間(b1に任意入力、この場合では1:00)を除いた実動時間から8時間(法定労働時間)を引いた通常の時間外労働時間を、e1には 深夜労働となる22:00を超えて23:30(c1セル)までの時間を表示する方法を教えてください。

  • 勤怠の集計表をエクセルで作成しました。

    勤怠の集計表をエクセルで作成しました。 実際に手計算すると0:00になるのに、関数を組んだところ、###########・・・と表示されます。 どうしてですか? 内容は・・・ 『時』『分』を分けてセルに入力(例:A1セル→8、B1セル→:、C1セル→30)すると、 一日の労働時間を求めるようになっており、『残業』、『深夜残業』も求めるようにしています。 さらに表の下部に求められた時間の合計が表示するように作りました。 実際にテストで入力してみたところ、始業が14:00、終業が22:00(休憩なしで、8時間労働) にすると労働時間が求められ、『深夜残業』が0:00と表示されますが、『残業』が ##############・・・となり、カーソルを合わせると「負の日付又は時間は########と表示します」 とメッセージが表示されます。 しかし、実際は0:00と表示されてきてほしいのですが、上記のように表示され、表下部『残業』合計 が正しい数字になってきません。 いろいろと関数を組みなおしてみたのですが、結果は同じでした。 教えてください。よろしく御願いします。 ちなみに、私が組んだ関数は以下の通りです。 =IF(J6>"22:00",O6-"8:00"-R6-P6,IF(J6<"22:00",O6-"8:00"-P6)) 上記セルの内容は以下の通りです。   J6・・・終業、O6・・・労働時間、R6・・・深夜残業、P6・・・早出時間  基本となる時間は、   始業・・・8:30、終業・・・17:30です。

  • Excelで給料計算したいのですが…

    Excelで、バイトの給料計算をしたいと思って、自分で表を作ってみました。 検索して、一番簡単で使いやすそうなやつを探して、作ってみたのですが、計算が合わなくて、 どんな式にしたらいいか分かる方いたら、教えて下さい。 現在、表は始業時間、終業時間、休憩時間、実労働時間、契約内時間、残業時間で作ってます。 時給計算は、ひとつにまとめるやり方が分からなくて、契約内日給と残業日給に分けました。 始業時間、終業時間、休憩時間はセルの書式設定で「h:mm」で表示。 実労働時間は「=終業時間-始業時間-休憩時間」。 契約内時間は「=MIN("8:",終業時間-始業時間-休憩時間)」で最大8時間まで書き出すようにして、残業時間は、「=実労働時間-契約内時間」です。 そして、給料計算なのですが、 契約内日給は「=契約内時間*1000*24」、残業日給は「=残業時間*1250*24」にしたのですが、 うちの仕事場は5分単位で残業代が出るため、労働時間が8時間5分とか、8時間20分というのが出てきます。 この時、例えば20分の場合、0.3333…に1250をかけて、417とExcelは解答するのですが、 実際は、0.34時間*時給で、小数点2ケタ表示で切り上げっぽいのです。 ROUNDUPで切り上げ設定できるらしい事は分かったのですが、今の計算式にどう入れていいのか分かりません。 時間を入れただけで、、Excelで全て自動的に計算してもらう方法はありますか?

  • 日またぎにも対応した勤務時間表を作りたい(やや長文)

    現在、Excelで勤務時間表を作っています。 使用者が始業時刻と終業時刻を入力すると後は全て計算で出るように作っています。 誤入力防止の為、入力規則で0:00~23:59しか入力出来なくしています。 (深夜1時は25時ではなく1時と入力) 通常時間帯と深夜時間帯では手当が異なるのでそれぞれの勤務時間を算出します。 深夜時間帯は22:00~6:00です。 早く出勤した場合の早出はMAX(6:00-[始業時間])で対応出来ました。 日をまたがない場合はMAX([終業時刻]-22:00)で対応出来るのですが 日をまたいだ場合、深夜時間帯の労働時間算出がうまく出来ません。 誤入力を考慮せず25:00と入力させた時はうまく出来ました。 (終業時刻入力形式を0:00~6:00は入力制限していた。 但し、整数を入れるとそのまま24:00、48:00と表示されてしまったため使用中止) 現在の入力形式のままでうまく機能させる式、 或いは、終業時刻の入力をうまく制限する方法がありましたら教えて下さい。

  • エクセルで時給を

    始業時刻、終業時刻から労働時間が出るようにして、それを給与で割って、時給を出したいのですが、どうすればよいでしょうか。 労働時間を出すまでは引き算で出したのですが、時給を算出する際、「給与で時間」が割れません。 J1に始業時刻、K1に終業時刻、L1に労働時間、X1に時給を表示させたいです。 初心者で、しかも数学が大の苦手なので・・・。宜しくお願いします。

専門家に質問してみよう