[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『作業時間の計算』(カッパ)
作業の開始時間と終了時間を入力すると、作業時間合計欄に
その月作業時間合計が計算されるような表を作りたいのです。
教えてください、よろしくお願いします。
A列 B列 C列 D列 E列 F列 G列 11/28 11/29 11/30 Wed Thu Fri 作業時間合計 12:00 17:45 15:00 18:00 15:00 17:45
作業時間合計 = 終了時間(合計) - 開始時間(合計) ではダメかしら。
やっぱり衝突〜♪ >その月作業時間合計 任意月の合計として考えました。 データ部分が、上から1,2,3行目とすると、 =SUMPRODUCT((TEXT($A$1:$E$1,"yyyy/m")="2007/11")*($B$3:$F$3-$A$3:$E$3)) 今月の 場合は~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ を MONTH($A$1:$E$1)=MONTH(TODAY()) ※年部分が複数年あるなら、"2007/11" ここを TEXT(TODAY(),"yyyy/m") の様にするなど、 日付部分の処理は、お好き。。。 時間形式で表示されるなら、表示形式は、[h]:mm が無難かも? (sin) ちょこっと修正!(~を1こ 取りました。。。)
くみりんさんと同じですが・・・・ 偶数列の合計から、奇数列の合計を引くのでは駄目ですかね? [[20060706150139]]『1列おきの合計』(EHO)
「その月の」を指定する必要があるのなら、もう少し 条件を増やす必要がありそうですが。
(HANA)
この数式使わせていただきましたが、結果は#N/A・・
=SUMPRODUCT((TEXT($A$1:$E$1,"yyyy/m")="2007/11")*($B$3:$F$3-$A$3:$E$3))
コピペして行をあわせたんですが、うまくいかなかったです。
私の作業のどのあたりに、問題がありそうでしょうか?
『一列おきの合計』はやってみたのですが、もっとスタイリッシュな形で作れ!
が上司の命令です・・・。能力超えた作業ですだす(ToT)
(カッパ)
データそのものを見れないので、以下思いつくままですが。。。 ・A1,C1,E1セルの入力はどうされてますか? ・B1,D1,F1セルは、空白のままですか? ・時間入力部分に#N/Aが、ありませんか? ・データに2007年11月のデータはありますか?
>もっとスタイリッシュな形で作れ! 何を意図するものなのか?私には理解できません。。。 A B C D E 1 日付 曜日 開始 終了 作業時間 2 2007/11/28 Wed 12:00 17:45 =IF(COUNT(C2:D2)=2,D2-C2,"") 3 2007/11/29 Thu 15:00 18:00 ↑これをコピー。 私は、こっちの形式が好きですが・・・ (sin)
A1,2007/11/1
C1,2007/11/2
E1,2007/11/3
B1,D1,F1 は空白
時間入力部分に#N/Aなし
データに2007年11月はなし
また、Sinさんお勧めいただいた=IF(COUNT(C2:D2)=2,D2-C2,"")を使ったリストは私も考えたのですが、
プロジェクトNoを縦に(A列)において、11/30の横に、工数合計の計算式を入たいというのが
最終目標なので、横に日付を入れた表にこだわりたいと思ってます。
やっぱり私のデータの入れ方に問題ありかな?
お助けください!
時間の計算が苦手です。
24時間を越える計算を作れません。
合計欄を 185:15(185時間15分)と表示させるには、どうすればよいのでしょうか??
教えてください、よろしくお願いいたします。
(カッパ)@おバカですみません。
2007年11月以外のデータは有りませんか? 無い場合は、sinさんのSUMRPODUCT関数を使って =SUMPRODUCT(($A$1:$E$1<>"")*($B$3:$F$3-$A$3:$E$3)) ~~~~ ^^^^ ~~~~ こんな感じにしてみるのはどうですかね? 合計欄は、表示形式を [h]:mm にして下さい。
式を実際のデータに合わせる際に気を付ける点は データがA列からF列迄入っている場合 最初の参照範囲 A:E(最初の列から一つ前の列まで) 次の参照範囲 B:F(次の列から最後の列まで) 最後の参照範囲 A:E(最初の列から一つ前の列まで) と、ずらして下さい。
上手く行かない場合は、 実際のセル番地 実際に入力されているデータ 上手く行かない数式 を教えて下さい。
(HANA)
>時間入力部分に#N/Aなし #N/Aの原因として考えられるのは、範囲内に#N/Aが存在するとしか考えられないのですが(私には)、 開始時間と終了時間の間 または 日付と日付の間 に別項目のセル(時間以外の要素)が存在し、 その部分に#N/Aが存在していませんか? 一番左の開始時間のセル と 一番右の終了時間のセル の間のどこかのセルに です。 もし存在するなら仮に#N/A問題が解決したとしても、合計計算の結果が違って来る可能性大です。 HANAさんの言われているように、実際のレイアウトと入力データの例および入力した式内容を知りたいですね。 見せたくない文字等あれば、ABCとかに置き換えてもいいので。 (sin)
>#N/Aの原因として考えられるのは 私は、参照範囲が合っていないのだと思いますが・・・。 たとえば =SUMPRODUCT(A1:A3-B2:B3) こんな式は#N/Aが出ます。 A3の相方が居ませんから。
(HANA)
あら、本当だ! 私は、範囲が違う場合は、【#VALUE!】が出るもんだと思ってました。 今まで結構な数の ウソ をついてたかも? この場を借りて <(_ _)> ごめんなさい。 "頭がでかい">> (sin)
11/1 11/2
P/J Thu Fri 合計工数
BXXXXXX 9:00 17:45 9:00 17:45 #VALUE!
F3=SUMPRODUCT((TEXT($A$1:$E$1,"yyyy/m")="2007/11")*($B$3:$F$3-$A$3:$E$3))
以上のように作ったところ、うまくいきません。
風薬飲んで、激しい睡魔と格闘中で、余計に混乱。。
本当に、理解できない子でごめんなさい。
どうすればよいのか、再度教えてください!!
(カッパ)@発熱中
カッパさんが最初にご提示のデータは 時間が入力されている最初の列 (計算する範囲の最初の列)がA列となっていますが 今回のものは、B列からになっています。
なので、範囲も一列ずれますよね。 今回のサンプルでは計算するのはB:Eの範囲ですから、↓の様になると思います。 =SUMPRODUCT((TEXT($B$1:$D$1,"yyyy/m")="2007/11")*($C$3:$E$3-$B$3:$D$3))
計算するのは、A:Fの範囲ではないでしょ? 最初のサンプルでは、計算するのがA:Fの範囲でしたよ。
(HANA)
HANAさんから回答がでていますので解決していると思いますが、参考までに
F3=SUMPRODUCT((TEXT($A$1:$E$1,"yyyy/m")="2007/11")*($B$3:$F$3-$A$3:$E$3)) この式の問題点 1 範囲に文字列が有り、それを四則演算に使用している (A3が文字で B3-A3 でエラーとなる) 2 循環参照になっている
すなわち、A3が空白又は数値であり、この式がG3であれば期待する値になりますよ
By しげちゃん
次のような条件を、教えていただいた数式に入れることは可能でしょうか?
もし、B列9:00からC列17:30の間作業したとしたら、1時間の休憩を引きます。
さらに、17:30以降作業をしたら、15分の休憩を引きます。
引き続き、教えていただきたく思います、どうぞよろしくお願いします。
(カッパ)
>B列9:00からC列17:30の間作業したとしたら、1時間の休憩を引きます。 9:00以前から17:30以降まで作業したらとすると ($C$3:$E$3>=--"17:30")*($B$3:$D$3<=--"9:00")*"1:00" C3:E3セルの値が『17:30』という文字列を正の数値にしたもの以上 であれば TRUE B3:D3セルの値が『9:00』 〃 〃 以下 であれば TRUE の配列計算に 『1:00』という文字列を掛ける。 ※【--】は、 (-1)*(-1) とお考え下さい。 ・TRUE,FALSEを加減乗除の計算に用いると1,0に置き換えて計算されます。 ・数字と判断される文字列も、加減乗除の計算では、数値と判断され計算されます。 ですので、上記要素をSUMPRODUCT関数(配列計算)の中で引いてあげれば、よろしいかと思いますが。
>さらに、17:30以降作業をしたら、15分の休憩を引きます。 この『さらに』は、どう判断すればよいのでしょう??? 条件? 行為? とりあえず、上で書いている事を参考に一度お考え下さい。 数式の作り方によっては、EXCEL君が『もう嫌や!』って拗ねるかも。。。 (sin)
通常業務時間の9:00から17:30の作業時間から、45分休憩分を引き、(実は休憩は45分だったことが判明)
もし、17:30以降に作業(残業)をした場合、15分休憩を引くということです。
Sinさん、丁寧なご説明ありがとございます。
ただ・・・。私、理解できないです。すみません。
どこが?といわれたら、ほぼ、わかりません。
でも、ここでくじけたら、悔しいのでわからないなりに、やってみようと思います。
本日は時間がないかもしれないので
明日にかけてやってみます。
ありがとうございました。
(カッパ)
ヒントになるかは分らないけど、こんなの作ってみました。 A B C D E F G H I 1 日付 開始時間 終了時間 2007/11 9:00以前 17:30以降 E*F*G I*"0:45" 2 2007/10/31 9:00 17:30 FALSE TRUE TRUE 0 0:00 3 2007/11/1 8:45 17:45 TRUE TRUE TRUE 1 0:45 4 2007/11/2 9:30 20:00 TRUE FALSE TRUE 0 0:00 5 2007/11/3 8:45 16:00 TRUE TRUE FALSE 0 0:00 ↑式_1 ↑式_2 ↑式_3 ↑式_4 ↑式_5 A1:C5は、入力データ E1:I1は、簡単なメモとしてます 式_1: =TEXT(A2,"yyyy/m")="2007/11" 式_2: =B2<=--"9:00" 式_3: =C2>=--"17:30" 式_4: =E2*F2*G2 式_5: =H2*"0:45" ※式_2と_3は、『--』を付けてない場合もお試し下さい。 SUMPRODUCT関数は、各セル(E2:G5部分)と各行(H:I部分)そして合計(=SUM(I2:I5))の計算をやってます。 まずは、これをSUMPRODUCT関数で作ってみては? (sin)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.