ついに夏本番!さぁ、家族でキャンプに行くぞ! >>

よろしくお願いします。
パート給与の計算表を作っているのですが、
・平日(平日の7:00~18:00)⇒時給800円
・平日夜間(平日の18:00~21:00)⇒時給900円
と時給がそれぞれ違います。

A1に始業時間、B1に終業時間を入力したとします。
例えばA1に13:00、B1に20:00とした場合、
C1には13:00~18:00の5時間×800円 + 18:00~20:00の2時間×900円 =5800円 を
自動計算させる方法はありますでしょうか?

A 回答 (3件)

たとえば「定時終業時刻以降に勤務を開始する」とか言った,様々な勤務パターンを考えるのか考えないのかによって,難しくも簡単にもなります。



ごくごく簡単な例:
勤務時間は必ず18時前から入る。終業時刻は18時より前だったり後だったりする
C1:
=(B1-A1)/"1:0"*800+(MAX("18:0",B1)-"18:0")/"1:0"*100

式の後半部分は「×900」じゃないので,間違えないように気をつけてください。

参考:
「時給」と時間数(時:分)のかけ算の方法については非常に良く寄せられるご相談の一つなので,是非回答をみてマスターしておいてください。



難しくした例:
ちょうど昨日同じご相談がありましたので,参考にしてください。
http://oshiete.goo.ne.jp/qa/6668716.html
各時間帯の時間数(時:分)を求め,それぞれの時給を上述のようにしてかけ算して合計してください。
    • good
    • 0

C1: =IF(B1>="18:0"*1,("18:0"-A1)/"1:0

"*800+(B1-"18:0")/"1:0"*900,(B1-A1)/"1:0"*800)
    • good
    • 1

無理です。


なぜならば、
例えばと言いながら、休憩時間に関する記述が無い。
7;00~18:00なら、休憩時間があるはず。
質問者だけではないのですが、例えばと言いながら、全ての仕様が提示されていなければ、
望まれる答えは出ませんよ。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Qエクセル不変則な休憩時間の実労働時間計算

お世話になります。色々と調べて見ましたが分からなかったので質問します。
今、勤務管理表を作成しています。労働条件は下記の通りです。
 ◆定時:9:30から17:30 ◆休憩時間:12:00~13:00
 ◆遅刻した場合でも勤務時間が休憩の時間をまたいだときは必ず、12時から13時までとります。

遅刻したり、早退した場合、その時間によって、実労働時間が変わります。
例えば、12:53に出勤⇒13:59に退社したときは実労働時間は59分です。(休憩時間を考慮する)
また9:30よりも早く出勤しても特に手当てはつかず、9:30出勤とみなします。

この場合、下図の「出勤時間」、「退社時間」を入力すると、「休憩時間」と「実労働時間」が
自動的に出したいのですが、どの様な数式を使えばいいのでしょうか。
列を増やす事はOKです。よろしくお願い致します。


   

Aベストアンサー

ゾーンに切ってそれぞれの時間数を数えることで,同じ数式で計算できます。

添付図:
C2:
=MAX(MIN("12:0",B2),"9:30")-MIN("12:0",MAX("9:30",A2))
D2:
=MAX(MIN("17:30:0",B2),"13:00")-MIN("17:30",MAX("13:00",A2))
E2:
=MAX(MIN("22:00:0",B2),"17:30")-MIN("22:00",MAX("17:30",A2))
必要に応じて更に「深残帯(22時以降)」を計算する事も勿論できます。


F2:
=B2-A2
G2:
=SUM(C2:E2)
H2:
=F2-SUM(C2:E2)

9:30前の出社を「ノーカウント」とした辻褄として,H3で「休憩時間」に算定されている様子が示されています。

Qエクセル2010 深夜残業時間の計算

出社・退社の時間から、残業、深夜残業など、
残業時間を算出する数式を作成していますがどうにもうまく出来ません。

残業となる時間の切り分けは、平日は以下のようになっています。、
 基本時間→8:30~17:15
 残業→5:00~8:30 と17:15~22:00
 深夜残業→22:00~翌朝5:00
 休憩時間→0:45(C1) 基本勤務時間→8:00(B1)

例えば平日、朝6:00出社→23:00退社であれば、
早朝残業が2:30、通常残業が4:45、計7:15です。深夜残業が1:00となります。

F欄に時間外、 G欄に深夜残業としています。
現状は時間外を出すのに  =SUM(E5-D5)-$B$1-$C$1-G5 と単純にしてます。(G5は手入力)
これを自動で入力できたらと考えています。
5:00前に出勤することはほとんどありませんが、22:00を超えることはあります。
ただし、24:00を超えると翌日計算になります。

過去欄を参考にしようにも理解できなく困っています。
http://oshiete.goo.ne.jp/qa/8147465.html
よろしくお願いいたします。

出社・退社の時間から、残業、深夜残業など、
残業時間を算出する数式を作成していますがどうにもうまく出来ません。

残業となる時間の切り分けは、平日は以下のようになっています。、
 基本時間→8:30~17:15
 残業→5:00~8:30 と17:15~22:00
 深夜残業→22:00~翌朝5:00
 休憩時間→0:45(C1) 基本勤務時間→8:00(B1)

例えば平日、朝6:00出社→23:00退社であれば、
早朝残業が2:30、通常残業が4:45、計7:15です。深夜残業が1:00となります。

F欄に時間外、 G欄に深夜残業としています。
現状...続きを読む

Aベストアンサー

深夜部分の残業時間を計算するなら、以下のような数式で早朝(5:00以前)部分と夜間(22:00以降)部分の深夜残業を足し算するのが簡単です。
(退出時間が翌日になる場合は25:00のような形式で入力した場合)。

=5/24-MIN(D5,5/24)+MAX(E5,22/24)-22/24

退出時間を「25:00」ではなく通常の「1:00」のように入力する場合は、以下の式で計算することができます。

=5/24-MIN(D5,5/24)+MAX((E5<D5)+E5,22/24)-22/24

ところで、深夜部分がメインの勤務がある場合、休憩時間などは考慮しなくてもよいのでしょうか?

QExcelで指定した条件で時間を自動に振り分ける方法がありましたら是非教えて下さい!

Excelに詳しい方でもし解決する方法がありましたら教えていただけますでしょうか。

①sheet1に以下の社員別の予定表があります。
    1     2     3     4     5     6  ・・・ 
A H28年4月  シフト表 
B  氏 名  振分業務① 振分業務②   1日     2日     3日 ・・・ 31日
C 小林 太郎  製 造   販 売   8:00 8:00 8:00 ・・・ 0:00
D 渡辺 太郎  販 売   配 達 8:00 6:00 8:00 ・・・ 8:00
E 鈴木 太郎  製 造   販 売 0:00 8:00 8:00 ・・・ 8:00
F 山田 太郎  販 売   配 達 6:00 8:00 0:00 ・・・ 8:00
G 佐藤 太郎  製 造   販 売 4:00 0:00 4:00 ・・・ 4:00




②sheet2は社員別に振分業務ごとにsheet1に入力した時間が自動で振分けられます。
    1     2     3     4     5  ・・・          
A H28年4月  業務時間振分表 
B        氏 名    1日     2日     3日 ・・・ 31日
C  製 造  小林 太郎   8:00 8:00 8:00 ・・・ 0:00
D  製 造  鈴木 太郎   0:00 2:00 2:00 ・・・ 8:00
E  製 造  佐藤 太郎   2:00 0:00 0:00 ・・・ 2:00
F  小 計 10:00 10:00 10:00 10:00
G  販 売  小林 太郎   0:00 0:00 0:00 ・・・ 0:00
H  販 売  渡辺 太郎   8:00 6:00 5:00 ・・・ 8:00
I  販 売  鈴木 太郎   0:00 6:00 6:00 ・・・ 0:00 
J  販 売 山田 太郎   5:00 3:00 0:00 ・・・ 5:00
K  販 売  佐藤 太郎   2:00 0:00 4:00 ・・・ 2:00
L  小 計 15:00 15:00 15:00
M  配 達  渡辺 太郎   0:00 0:00 3:00 ・・・ 0:00
N  配 達  山田 太郎   1:00 5:00 0:00 ・・・ 3:00
O  小 計 1:00 5:00 3:00 ・・・ 3:00

【振分け条件】
・製造の合計上限額は「10:00」で超えた分は販売もしくは配達に振分けられます。
  販売の合計上限額は「15:00」で超えた分は製造もしくは配達に振分けられます。
 ・sheet1の氏名の上から順番に振分けます。

このような条件でできる方法がありましら何卒ご教授下さい。よろしくお願いいたします。

Excelに詳しい方でもし解決する方法がありましたら教えていただけますでしょうか。

①sheet1に以下の社員別の予定表があります。
    1     2     3     4     5     6  ・・・ 
A H28年4月  シフト表 
B  氏 名  振分業務① 振分業務②   1日     2日     3日 ・・・ 31日
C 小林 太郎  製 造   販 売   8:00 8:00 8:00 ・・・ 0:00
D 渡辺 太郎  販 売   配 達 8:00 ...続きを読む

Aベストアンサー

No4です。
マクロは標準モジュールへ登録してください。

Qエクセル入力で項目別にシートに振り分ける方法を教えてください!

エクセルでの入力の時に
シート1では全ての営業所をひとまとめにして入力
シート2以降では営業所別にシートに振り分ける方法がわかりません。

シート1(入力するシート)
1 営業所名  支出金額  項目
2 群馬支部  11980  雑費
3 長野支部  12080  交通費
4 群馬支部  19800  接待交際費
5 新潟支部  19800  接待交際費

シート2(群馬支部)
1 営業所名 支出金額 項目
2 群馬支部 11980 雑費
4 群馬支部 19800 接待交際費

入力する場所はシート1のみで
シート2、3は営業部ごとの項目になっていて
シート1に入力すると自動で各シートに
振り分けられるようにしたいのです。

これを解決できる方法とは、どのような方法があり
そしてどうやれば出来るのでしょうか?

お時間あるときにご返答頂けると嬉しいです。
どうぞよろしくお願い致します。

Aベストアンサー

関数のみで行う場合です。

シート1(入力するシート)
 A  B       C       D
1 No. 営業所名  支出金額  項目
2 1 群馬支部   11980    雑費
3 2 長野支部   12080    交通費
4 3 群馬支部   19800    接待交際費
5 4 新潟支部   19800    接待交際費

VLOOKUP関数で処理するのでA列にNo.を入れてください。
ちなみにA2以降のA列に
  =ROW()-MATCH("No.",A:A,0)
と入れると並べ替えをしても行番号が変わりません。

シート2(群馬支部)
  A B        C      D       E
1   営業所名 データ数 総データ数
2   群馬支部   2      4
3 
4                           行番号
5 No. 営業所名 支出金額 項目       0
6  1  群馬支部  11980   雑費       1
7  2  群馬支部  19800   接待交際費  3
8  3                          #N/A

各セルに次の関数を入れます。
B2:営業所名
   ここをリスト化すると1枚のシートで全営業所が計算できます。
C2:=COUNTIF(Sheet1!B:B,A2)
   群馬支部のデータ数を求める
D2:=MAX(Sheet1!A:A) or =COUNTA(Sheet1!B:B)-1
   総データ数を求める
D5:0
D6:=MATCH($A$2,INDIRECT("Sheet1!$B$"&TEXT(E5+2,"0")&":B"&TEXT($C$2+1,"0")),0)+E5
   非常に面倒な式ですが、シート1における営業所名の出現行を
   MATCH関数で出しています。単純に組むと一番始めしか出て来な
   いので次の行では前行で見つけたシート1での出現行の次から
   検査する必要があります。
   そのためINDIRECT関数で可変する範囲を設定しています。
A6:連番(シート1と同じ)
B6:=IF(ISERROR($E6),"",VLOOKUP($E6,Sheet1!$A:$D,2,FALSE))
   VLOOKUP関数で必要データを取り出します。
   データがなくなるとE列の行番号がエラーになるので、そこは
   表示しない(空白)ためのif文を加えてあります。
   後は必要行コピーすれば完成です。

 

関数のみで行う場合です。

シート1(入力するシート)
 A  B       C       D
1 No. 営業所名  支出金額  項目
2 1 群馬支部   11980    雑費
3 2 長野支部   12080    交通費
4 3 群馬支部   19800    接待交際費
5 4 新潟支部   19800    接待交際費

VLOOKUP関数で処理するのでA列にNo.を入れてください。
ちなみにA2以降のA列に
  =ROW()-MATCH("No.",A:A,0)
と入れると並べ替えをしても行番号が変わりません。

シート2(...続きを読む

Qエクセルでルールに従い数字を振り分けたい。

つたない説明なのですが宜しくお願い致します。

最初に数式に優先順位と数字をつけてルールを作っておいて、
入力した数字をルールに従い、優先順位と数字を別のセルに反映・振り分けて表示したいのですが。

仮にA1セルが1,000、B1セルが1,500、C1セルが500、D1セルが合計3,000として優先順位をA1 → B1 → C1とした時に、

1)A2セルに3,000と入力するとつけておいた優先順位に従い3,000を、
A3セルに優先順位の高いA1セルからA1セルの1,000と反映・振り分け、B3セルにB1セルの1,500を、C3セルにC1のセル500を、D3セルに合計0と3,000を反映・振り分けさせて表示。

2)同じルールでA2セルに2,500と入力した場合は2,500を、
A3セルに優先順位の高いA1セルからA1セルの1,000と反映・振り分け、B3セルにB1セルの1,500を、C3セルにC1セルの500が反映できないので-500と、D3セルに合計-500と反映・振り分けさせて表示。

3)同じルールでA2セルに2,000と入力した場合は2,000を、
A3セルに優先順位の高いA1セルからA1セルの1,000、B3セルにB1セルの1,500が反映できないので-500、C3セルもC1セルの500が反映できないので-500と、D3セルに合計-1,000と反映・振り分けさせて表示。

つたない説明で申し訳ないのですが、このような数式表を作りたいのですが、どうぞ宜しくお願い致します。

つたない説明なのですが宜しくお願い致します。

最初に数式に優先順位と数字をつけてルールを作っておいて、
入力した数字をルールに従い、優先順位と数字を別のセルに反映・振り分けて表示したいのですが。

仮にA1セルが1,000、B1セルが1,500、C1セルが500、D1セルが合計3,000として優先順位をA1 → B1 → C1とした時に、

1)A2セルに3,000と入力するとつけておいた優先順位に従い3,000を、
A3セルに優先順位の高いA1セルからA1セルの1,000と反映・振り分け、B3セルにB1セルの1,500を、C3セルにC1のセル5...続きを読む

Aベストアンサー

結果通りにはなりますが、正しいのか保障できません。
反映できない時に表示する値の計算をもう一度見直してください。

A3=IF($A$2>=SUM($A$1:A$1),A$1,-MIN(SUM($A$1:A$1)-$A$2,A$1))
B3=IF($A$2>=SUM($A$1:B$1),B$1,-MIN(SUM($A$1:B$1)-$A$2,B$1))
C3=IF($A$2>=SUM($A$1:C$1),C$1,-MIN(SUM($A$1:C$1)-$A$2,C$1))
D3=SUMIF($A$3:$C$3,"<0")

Qエクセルで勤怠管理表で休憩時間を計算させるには

エクセルで、社員の出勤時間の計算をしたいのですが、
休憩時間の控除の計算式がよくわからずに困っています。

パートさんが多いので、労働時間により休憩時間が異なり、下記のようにしています。
4時間30分未満=0分
4時間30分以上=30分
6時間以上=45分
8時間以上=60分

現在使用しているデータの時間表示は、出社「9:00」退社「17:00」延べ時間「8:00」というような、60進法の時分表示です。
これを、10進法表示にはしない方法で計算したいです。

現在の表では、
Aセル=出社時刻、Bセル=退社時刻、Cセル=述べ就労時間、Dセル=休憩時間、Eセル=勤務時間(←述べ就労時間-休憩時間)
にしているのですが、

Dセルの休憩時間が自動計算設定の仕方がわからず、述べ就労時間を見ながら手入力しています。(かなり手間なのと、間違いのもとなので)
これを自動計算できるようにしたいのですが・・

教えて頂けたら大変助かります。
宜しくお願いします。

Aベストアンサー

IF文で
=IF(C2<"4:30"*1,0,IF(C2<"6:00"*1,"0:30"*1,IF(C2<"8:00"*1,"0:45"*1,"1:00"*1)))

Qエクセルで、条件に一致した行を別のセルに抜き出す方法

エクセルで、指定した条件に一致するセルを含む行をすべて抜き出す方法が知りたいです。

たとえば、

<A列> <B列> <C列>
7/1 りんご 100円
7/2 ぶどう 200円
7/2 すいか 300円
7/3 みかん 100円

このような表があって、100円を含む行をそのままの形で、
別のセル(同じシート内)に抜き出したいのですが。

7/1 りんご 100円
7/3 みかん 100円

抽出するだけならオートフィルターでもできますが、
抽出結果を自動的に、別の場所に、常に表示させておきたいのです。

初歩的な質問だと思いますが、検索しても分からなかったので、よろしくお願いします。

Aベストアンサー

同じ質問が結構よく出てますが、そんなに初歩的でもありません
別シートのA1セルに「100円」と入力し、そのシートの任意のセルに以下の式を貼り付けて下さい。後は、下方向、右方向にコピー。
日付のセル書式は「日付」形式に再設定してください

=IF(COUNTIF(Sheet1!$C:$C,$A$1)>=ROW(A1),INDEX(Sheet1!A:A,LARGE(INDEX((Sheet1!$C$1:$C$500=$A$1)*ROW(Sheet1!$C$1:$C$500),),COUNTIF(Sheet1!$C:$C,$A$1)-ROW(A1)+1)),"")

データ範囲は500行までとしていますが、必要に応じて変更して下さい

Qエクセルで表示形式の時刻の「0:00」を表示しないようにするには?

エクセルで残業の計算をしています。
入社時間 退社時間 残業時間
のような感じでしているのですが、
残業時間が、0:00(つまり残業0)の場合は、
何も表示しない場合は、どのような関数を書けばよいでしょうか?

ちなみに残業時間のセルには、残業時間を自動的に表示させるために、
すでに「=IF((A1="")+(B1=""),"",B1-A1-"8:30")」という式が入っています。
この式にどういう式を付け加えればよいのでしょうか?

Aベストアンサー

ただ単に表示形式を変更すればいいです。現状で書式が時刻形式の
h:mmになってると思いますので、ユーザー定義でh:mm;;と後ろにセ
ミコロンを2つ追加して下さい。負の値と0の時は何も表示しないと
いう意味になります。

Qエクセル 祝日の関数を教えてください

条件付き設定で土、日、祝日に色を付けたカレンダーを作っています。

曜日の色の付け方はいろいろあるようですが、今回は

土曜日・・・=WEEKDAY($A1)=7
日曜日・・・=WEEKDAY($A1)=1

=WEEKDAY($A1)=の後に、土曜日は「7」、
日曜日は「1」で作りました。

そこで質問ですが、祝日の場合には「=」の後の数字をいくつで設定するのでしょうか?

よろしくお願いします。

Aベストアンサー

Excel(エクセル)実用編:カレンダーの作成例
http://www.eurus.dti.ne.jp/~yoneyama/Excel/jituyou/calendar.htm
・祝日の色を変更します。 

ご参考まで。

Q【大至急お願いします!!】エクセルを使ってシフト表を作成したい

【大至急です!!】
エクセルを使ったローテーションの作成方法を教えてください!!
エクセル初心者です。

人事異動で以下のような窓口当番のローテーションを作成することになりました。

会社のパソコンのセキュリティ上フリーソフトは使用できず、また、私自身のパソコンスキルからエクセルを使用して作成するよりほかないと考えています。
(私自身はマクロは使えません。)

エクセルのバージョンは2010です。

どのような方法があるか詳しくお教え下さい。

1.10名程度で2つの窓口を担当する。

2.1つの窓口に1名の担当者がつきます。

3.担当者は午前と午後で交代する。(=2名×2名で1日つき4名が必要)

4.休暇や繁忙時期を考慮する必要があるため、適宜担当できない日を考慮する必要がある。(繁忙期や休暇というのは、人によって取得日が違うため個別対応が必要という意味です。)

5.担当者の経験が分かれるため、10名を2グループに分け、なおかつ顔合わせもランダムになるようにしたいです。



ざっくりしているかもしれませんが、以上です。宜しくお願いします。

【大至急です!!】
エクセルを使ったローテーションの作成方法を教えてください!!
エクセル初心者です。

人事異動で以下のような窓口当番のローテーションを作成することになりました。

会社のパソコンのセキュリティ上フリーソフトは使用できず、また、私自身のパソコンスキルからエクセルを使用して作成するよりほかないと考えています。
(私自身はマクロは使えません。)

エクセルのバージョンは2010です。

どのような方法があるか詳しくお教え下さい。

1.10名程度で2つの...続きを読む

Aベストアンサー

>窓口が午前・午後各2名ある場合は各列にコピペして増やせば良いのでしょうか
いや、全員を2つのグループに分けてそれぞれのグループから1人ずつという風に理解していたので、その表は一人しか選びません。だって、経験によって2つのグループに分けるのですから、多分ベテランと新人のグループに分けるんでしょう?ですから、ベテラン用の表と新人用の表を2つつくってそれぞれから1人ずつ選ぶという使い方を想定しています。
もし一つの表で2人選ぶということであれば(もちろんそれが要求仕様なのですが)、根本的に作り替えなければならないので、申し訳ないですがお手伝いできないです。
ただ、別の方がアイデアをお持ちかもしれませんので、その「担当者の経験が分かれるため、10名を2グループに分け」が具体的にどういう意味なのか捕捉されておくとよいでしょう。不躾ながら正直言うとベテラン用と新人用で分けてそれぞれから一人ずつ選べばいいんじゃないかなぁ、としか思えないのです。

>お教えいただいた形の場合、何か入力するたびに再計算されるのですが、そもそもそうゆうものなのでしょうか?
そうです。ですから、エクセルの設定を手動計算にする必要があります。
リボンに「計算」というタブがあります。そこに「計算方法の設定」という項目がありますから、そこで設定します。詳しくはこちらをどうぞ↓。
https://121ware.com/qasearch/1007/app/servlet/relatedqa?QID=012854
再計算するにはF9を押します。

>午後当番→同じ方が午前当番となってしまう事例が発生しています
それはそうなると知っていました。午前と午後で交代するということだけだったので、日付が変われば午後と午前でつながってもいいという意味だと思っていました。でも午後-午前も一緒に禁止する方が実装するのは簡単です。Plan Optimized の部分は第一日目の午前を除いて、全部同じにすればいいです。つまり第一日目の午後をそのままま全シフトにコピーすれば午後-午前もなくなります。
ただ前の月の最後のシフトとの関係は人間が確認しなければならないです(これは前のバージョンでも同じ)。

>何度再計算しても各人の当番回数がかなりばらついてしまいます。
そうですね。それは手で調整することを想定しています。私の手元では5人の表を作ったので何回かやるといい感じのが出てくるのですが、それでも特定の期間にかたまってしまうというようシフト表になってしまいます。10人でやるとさらに理想的なシフト表ができにくいかもしれません。でもまるっきり白紙の状態から手で作るよりはかなり楽になるのと思うのですが。
また、本質的な解決方法じゃないですが、過去の3シフトに入っていた人からは選ばない、というような条件を付け加えると、少しはましになるようです。「過去の3シフト」の縛りを加えるには、Plan Optimized の項目で第2日目の午後シフトを =If(CountIf(B24:D24,"√")>0,"x",If(E4="x","x","")) として下と右にコピーしていきます。ただし、この縛りを入れると、とても規則的なシフト表になるとか、誰も入れない日がいくつも出てくるとか、別の問題も出てきます。

>パソコンに詳しい方からすれば無茶な質問であることは理解しております。
私はそうは思いませんが、ただエクセルのファイルのままで渡せないとかいうのがありますので、こういう掲示板でやり取りするとちょっと時間かかるのはたしかですね。

>窓口が午前・午後各2名ある場合は各列にコピペして増やせば良いのでしょうか
いや、全員を2つのグループに分けてそれぞれのグループから1人ずつという風に理解していたので、その表は一人しか選びません。だって、経験によって2つのグループに分けるのですから、多分ベテランと新人のグループに分けるんでしょう?ですから、ベテラン用の表と新人用の表を2つつくってそれぞれから1人ずつ選ぶという使い方を想定しています。
もし一つの表で2人選ぶということであれば(もちろんそれが要求仕様なのですが)、根本...続きを読む


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング

おすすめ情報