• ベストアンサー

エクセル関数の意味は?

会社の事務処理をしている際に、営業の方が作成された勤務表の 内容をチェックしていたところ、 下記のような計算式が入っていました。 まったく意味がわからないのですが、どんな計算をされているか 分かる方、教えてください。 IF(E8="","",((ROUNDDOWN(E8/100,0)*60+RIGHT(E8,2))-(ROUNDDOWN(D8/100,0)*60+RIGHT(D8,2)))/60-I8)

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

  • ベストアンサー
  • mt2008
  • ベストアンサー率52% (885/1701)
回答No.2

恐らく、勤務時間を計算しています。 D8に出社時刻が時と分をくっつけた「800」、E8に退社時刻が「1730」の様に入っていて、I8には休憩時間が時間単位で「1」の様に入っているのではないですか? =IF(E8="","", ←E8が空白の場合、空白にする ((ROUNDDOWN(E8/100,0)*60+RIGHT(E8,2)) ←退社時刻を分解して分にしています(1730→17*60+30) -(ROUNDDOWN(D8/100,0)*60+RIGHT(D8,2)) ←出社時刻を分解して分に(800→8*60+0)、そして退社時刻-出社時刻を計算し、会社に居た時間(分)を求めています。 )/60 ←60で割って、分を時に変換 -I8) ←会社に居た時間から休息時間を引いています。

yui0829
質問者

お礼

丁寧なご回答ありがとうございます。 mt2008さんから頂いた回答とにらめっこしながら、 もう一度、エクセルのシートを見てみようと思います。 ありがとうございます。

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

その他の回答 (1)

  • lul
  • ベストアンサー率41% (10/24)
回答No.1

エクセルシートで、セルD列/E列/I列にどのような値が入力されているのですか? 処理は別段難しい事はしていませんが、それが分からない事には上手く説明できないです…。 因みに ROUNDDOWN関数は小数点以下桁数を指定する関数で、 RIGHT関数は指定された文字列の右側から指定数の文字列を抽出する関数です。

yui0829
質問者

お礼

早速のご回答ありがとうございます。 まずROUNDDOWNとRIGHT関数について 勉強してみようと思います。

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

関連するQ&A

  • エクセルの関数の読み取り方を教えてください。

    エクセルで夜間の出勤時間の管理をしております。 以前在籍しておられた方が作られたようなのですが 関数初心者の私では読解するのが困難なので お教えいただきたく投稿しました。 完成されてる表を掲載できればいいのですが・・・ 関数を掲載させていただきますので その関数の読み取り方をお教えいただければ幸甚です。 A列 日付 B列 始業時間 C列 終業時間 D列 計算用退勤表記 E列 拘束時間 F列 労働時間 G列 深夜労働時間 H列 残業時間 I列 普通勤務 J列 深夜勤務 K列 普通残業 L列 深夜残業 D列 =IF(COUNT(B5:C5)=0,0,C5+IF(C5<=B5,"24:00",0)) F列 =IF(E5-$B$37<0,0,E5-$B$37) G列 =IF(COUNT(B5:C5)=0,0,MAX(0,"5:00"-B5)-MAX(0,B5-"22:00")+MAX(0,D5-"22:00")-MAX(0,D5-"29:00")-$B$37) H列 =IF(F5-$B$38<0,0,F5-$B$38) I列 =IF(D5-B5-H5-G5-$B$37<0,0,D5-B5-H5-G5-$B$37) J列 =IF(I5=0,0,$B$38-I5) K列 =IF(F5-I5-J5-L5<=0,0,F5-I5-J5-L5) L列 =IF(G5-J5<=0,0,G5-J5) 基本休憩時間 2:00(=B37) 所定労働時間 8:00(=B38) 深夜終了時刻 5:00(=B39) 深夜開始時刻 22:00(=B40) 深夜労働時間 5:00(=B41) 当番休憩時間 1:00(=B42) 表の内容はこんな感じなのですが。 これでわかりますでしょうか? 基本の時間は20:00~7:00 です また、万一勤務時間が17:00~4:00の場合 どこの計算式がどのようにわかりますでしょうか? 文字の羅列になって申し訳ございませんが 宜しくお願い申し上げます。

  • IF関数

    勤務分担担当表を作成しています。以前から論理式の対象のセルに計算式が入っているとき関数が反映しない時があります。未熟が原因だと思うのですが回答お願いいたします。例を記載します。対象セル(=E18).E18の計算式=IF(AD9=2,"休",IF(AD9=1,"3",IF(AD9="休","2",IF(AD9=3,"1")))).反映させたいセルの計算式=IF(I$18=1,IF(E19=3,4,3),IF(I$18=2,IF(E19=1,$X$4,IF(E19=2,$AD$3,IF(E19=3,$AD$4,IF(E19=4,$X$3,"")))),""))です。仕事の分担に1~4まであります、それを返し、勤務表を作成しています。他の事例では対応できるのですが今回はできません。ご指導お願いいたします。

  • IF関数

    勤務分担担当表を作成しています。以前から論理式の対象のセルに計算式が入っているとき関数が反映しない時があります。未熟が原因だと思うのですが回答お願いいたします。今回の例を記載します。対象セル(=E18).E18の計算式=IF(AD9=2,"休",IF(AD9=1,"3",IF(AD9="休","2",IF(AD9=3,"1")))).反映させたいセルの計算式=IF(I$18=1,IF(E19=3,4,3),IF(I$18=2,IF(E19=1,$X$4,IF(E19=2,$AD$3,IF(E19=3,$AD$4,IF(E19=4,$X$3,"")))),""))です。仕事の分担に1~4・休、まであります、それを返し、勤務表を作成しています。他の事例では対応できるのですが今回はできません。ご指導お願いいたします。対象セルが実数だと反映してくれます。

  • Excelでの勤務表作成について

    エクセルにて勤務表を作成したいと思っておりますが、過去ログの どれに当てはまるかがわからず、質問させて頂く次第です。 現在勤務表は以下のとおりとなっております。 □基本パターン 始業時間  終業時間  実働時間  時間外(所定時間超え) C  D     E  F     G  H     I  J  8:45    17:15     7:30    0:00 上記基本パターンの他に残業(時間外)を15分単位でプラスする場合があります。 その場合、以下のようになります。 □残業ありの場合(例:18:30まで働いた場合) 始業時間  終業時間  実働時間  時間外(所定時間超え)  C  D     E  F      G H     I  J  8:45    18:30     8:45   1:15 *休憩は1時間です 現在、エクセルにて実働時間を計算する式を以下のように製作して おります。 □時間式 IF(C4="","",IF((E4-C4)>=0,ROUNDDOWN(((E4-C4)*60-60+F4-D4)/60,0),ROUNDDOWN(((E4-C4+24)*60+F4-D4)/60,0))) □分式 IF(C5="","",IF((F5-D5)>=0,F5-D5,F5-D5+60)) そこで、基本労働時間7:30を超えた時間外を計算する式 (時間式・分式)はどのように作成したら宜しいでしょうか。 お手数をおかけ致しますが、宜しくお願い致します。

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

    時間の計算する表を作ったのですが、うまくいかない所があります。 現在の表は、B4に開始時間とC4に終了時間を入れ5時から22時までの間の経過時間をD4に、22時から5時までの時間経過をE4に入るようにしています。 「C1に5:00、D1に22:00、 B4に=IF(OR(B4="",C4=""),"",IF(OR(B4>=$D$1,B4<$C$1),"",IF(OR(C4>$D$1,C4<=$C$1),$D$1,C4)-B4))、 E4に=IF(OR(B4="",C4=""),"",IF(AND(C4>$C$1,C4<=$D$1),"",IF(AND(B4>=$C$1,C4<=$C$1),1-IF(B4<$D$1,$D$1,B4)+C4,C4-IF(AND(B4>=$C$1,B4<$D$1),$D$1,B4))))」です。 そこで、5時をまたがった時に、5時までの部分をE4に5時からの部分をD4に分けて表示させたいのですが、うまくいきません。 例えば、開始4:30 終了5:10の場合、D4に0:10 E4に0:30が表示させるようにです。 よろしくお願いします。

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

    お世話になります。 仕事で各商品の単価を比較するためのリスト作成を頼まれたのですが、条件が複雑なため、 関数で悩んでいます。画像を参考に、順を追って説明させて下さい。 1.まずリストに、各商品の単価を入力 2.入力された単価は作業列(1)~(3)に反映されます。このセルに入っている計算式は、   セルG6 =IF(C6="","",C6)   セルH6 =IF(D6="","",D6)   セルI6  =IF(E6="","",E6)   が入っています。 3.ここからが分からないところなのですが、採用単価に入る式で迷っています。条件は、  (1)A資料があれば、A資料が優先的に採用単価になる  (2)B資料とC資料の2つがあれば、平均の値(1円未満切捨て)が採用単価になる  (3)空白の欄には何も入れない  とのことです。 試しに(セルJ6の場合) =ROUNDDOWN(IF(G6="",AVERAGE(H6:I6),G6),0)  を入れてみましたら、(1)と(2)の条件はクリアしたように見えますが、空欄のある所はエラーの #DIV/0!が出てしまいました。 式自体が違うのか、それとも式に何か追加するのか分かりません。 分かりにくい説明かと思いますが、どうぞお知恵をお貸し下さい。宜しくお願いします。       

  • エクセル関数で教えてください!!

    エクセルで作成した表に計算式をいれたいのですが、 わからないので、ぜひ教えてください!! (内容) D15 のセルに A1×B2×C3×D3ーE3 という計算式が入っているとします。 D15の計算式の結果にまた条件をつけたいのです。その条件は 10万を超え10億未満のものは。上位4位以下の端数を四捨五入 の上、上位3位にとどめるというものです。 たぶんIF関数とROUND関数を併用するのでしょうが、実際式の 入れ方がわかりません。 もしご存知な方がいらっしゃればぜひ教えてください!! 宜しくお願いします☆

  • Excelの関数がうまく使えません。

    Excelで関数がうまく使えません。 「=IF(E2>=2000,200,IF(E2>=1000,100,IF(E2>=500,50," ")))」というのをH列のセルに入力しています。 計算はうまく?いくのですが、偽の場合に空白にしているのに、E列が空白でも200と反映されてしまいます。 ちなみにE列には「=IF(ISNUMBER(D2),(C2*D2)," ")」このような関数を使っております。 H列が空白のときに正しく空白にするにはどうしたらよいのでしょうか? 教えてください。

  • エクセル ROUNDDOWN関数の誤差

    給与の計算をエクセルで行っているのですが、誤差が出て困っています。 A1に出勤時間(17:00)、B1に退勤時間(18:00)、C1に勤務時間を計算するため(B1-A1)*24、D1に時給(100)、E1にROUNDDOWN(C1*D1,0)で答えが99になってしまいます。 色々他の値でも試してみたのですが、全ての時給、勤務時間で誤差が出る訳ではなく、時給が600円や700円の場合に誤差が出たり、勤務が15時から16時でも誤差が出たりします。どのような法則で誤差が出るのか全くわからず、修正方法もわかりません。 どなたか良い解決方法がお分かりでしたら教えていただけませんでしょうか? そもそもこのような場合に上記のような計算式を使用するのが間違いであればそれもご指摘ください。 よろしくお願いします。

  • Excelの関数式について

    以前、こちらで勤務時間表の作成について質問をさせて頂きました。 この度勤務時間表のとなりに給料の早見表を作成することを考えております。 現在は、以下のようになっております。 C4=始業時間[基本8:45 変動なし]  D4=終業時間[基本17:15だが、残業に応じて15分単位で増える]   E4=実働時間[D4-C4-休憩(1時間)の合計]   =IF(C4="","",D4-C4-TIME(1,0,0)) F4=残業時間[基本労働時間(7時間30分)-実働時間の合計]   =IF(E4="","",E4-TIME(7,30,0)) この隣に以下内容を追加する事を考えております。 G4に実働時間分の給料[実働時間(E4)×1530円] H4に残業時間分の給料[残業時間(F4)×382円] I4に合計の給料[G4+H4] 下部のI35にI4からI35までの合計給料 を表示させたいのですが、今一上手に出来ません。 ご迷惑をおかけしますが、どのような式を入れたらよいのか、 ご教授頂けますよう、お願い致します。

専門家に質問してみよう