【復活求む!】惜しくも解散してしまったバンド|J-ROCK編 >>

2017年の有給の計算をExcelで行いたいと思っています。
社員は20名ほどの小さな会社です。

恥ずかしながらExcelは素人でどのようにしていいか全くわかりません…!
フォーマットなども参照したのですが、条件がうちの会社と違っていてうまく使うことができませんでした…。下記に我が社の有給の条件を記載します。

◆毎年1月1日から12月31日までが対象。基準日は各年度の1月1日。
勤続年数に応じて下記の日にちが付与される。
1年目…12日 
2年目…13日 
3年目…14日 
4年目…16日 
5年目…18日 
6年目以上…20日
※端数月は切り上げ
つまり4月に入社しても10月に入社しても同じ年数としてカウント。

◆翌年度に限り日にちを繰り越すことができる。

◆半日(0.5日)単位で取得できる。

◆また中途入社については入社日に基づいて下記の日にちが付与される。
1月~6月…10日 
7~9月…5日 
10月~12月…2日
(これらの日数も翌年繰り越せる)
※中途入社については入社から半年たたなくても基準日が1月1日なので、翌年になれば
更に12日が付与される。

以上です。
実は計算は年内のうちに手動で終わっているのですが、上司にExcelの表にして確認したいと
いわれました…。あくまでも上司が確認する用で簡単な計算式でOKです。
イメージとしては
2016年 取得日数●日 前年度繰り越し●日 合計有給日数●日 使用日数●日 時効消滅●日
2017年 取得日数●日 前年度繰り越し●日 合計有給日数●日
のみ分かればOKという感じです…。

みなさま、何卒お力を貸してください…!!
宜しくお願い致します……!!

質問者からの補足コメント

  • 渚美鈴様が下記でご提示してくださった
    http://excel.resocia.jp/report/868/
    を参照しながらやっているのですが、当付付与の欄の入れ子

    =IF(D4<6,0,IF(AND(D4>=6,D4<18),10,IF(AND(D4>=18,D4<30),11,
    IF(AND(D4>=30,D4<42),12,IF(AND(D4>=42,D4<54),14,IF(AND(D4>=54,D4<66),
    16,IF(AND(D4>=66,D4<78),18,IF(D4>=78,20))))))))

    を自社規定用にする変え方がわかりません…!
    どなたか教えてくだされば幸いです…!!

      補足日時:2017/01/06 11:19

このQ&Aに関連する最新のQ&A

A 回答 (3件)

参考になるかな?


http://excel.resocia.jp/report/868/
    • good
    • 0
この回答へのお礼

ありがとうございます!
そのページを参照しながらやっているのですが、当年付与分の入れ子を上記の自社規定にアレンジするやり方がわからなくて詰んでいます…!

お礼日時:2017/01/06 11:16

幾つか補足要求があります。


以下の認識であってますか。
1)1年目とは、2016年を基準にすると、入社日が2015/1/1~2015/12/31のケース
中途入社とは、2016年を基準にすると、入社日が2016/1/1~2016/12/31のケース

2)取得日数とは、有給が付与される日数のこと(1年目なら12日のこと)(計算式で求める)

3)前年度繰越日数は、計算式で求めるのでなく、実際に記入される日数
(もし、計算式で求めるならその計算式を提示ください。)

4)合計有給日数=取得日数+前年度繰越日数

5)使用日数(実際に有給をとった日数) 計算式で求めるのでなく、実際に記入される日数
(もし、計算式で求めるならその計算式を提示ください。)

6)時効消滅
意味が判りません。具体的な説明をお願いします。計算式で求めるならその計算式を提示ください。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。簡単なものですがなんとか表を作ることができました!

お礼日時:2017/01/10 13:48

条件式の読み方です。

https://kokodane.com/kan50.htm
式は、もし、D4セルの数値が6より小さいなら0にして、それ以外の6以上18より小さいなら10、‥‥と続きます。
有給休暇の付与、切り捨て等の条件を整理して同じように組み立てて下さい。
現在いる社員のデータを入れてみて、確かめながらするといいかな?
    • good
    • 0
この回答へのお礼

補足のご回答ありがとうございます。
上記URLを参照しつつ何とか条件を整理して、簡単な表ですが作ることができました!

お礼日時:2017/01/10 13:45

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

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

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

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

Q年次休暇の取得とのこりの自動計算について

 恐れ入ります。先日年次休暇の計算方法について相談させていただいた者です。
 ご回答をいただき、それをヒントに自分で考えられるかと思ったのですが、難しいので申し訳ありませんが、どうぞよろしくお願いします。

 添付画像のようなレイアウトを考えています。
・あらかじめ去年からの繰り越しを入力しておきます。
 日、半日、時間、分という単位です。
・黄色のセルに、現在の取得年休を入れます。
・自動的に現在の積算年休が表示され、差し引きがわかるようにしたいのです。

 また、次の約束があります。
・1日は7時間45分です。(先日は7時間15分で尋ねましたが、職種により違い、今回は7時間45分をもって1日とする職種の分です)
・半日単位での取得はできますが、半日は時間に換算せず、0.5日という表記にします。
 最終的には「15.5日と3時間15分」といった残数表記にします。
・半日を時分換算しないので、繰り下がりは「日」から「7時間45分」をとってきます。

 レイアウトは多少変わっても構わないので、どうぞよろしくお願いします。

Aベストアンサー

「先日の相談」とは、こちらのことですね。

http://oshiete.goo.ne.jp/qa/8422338.html


前回の回答は計算誤差にまで話が及んで、難しくし過ぎましたかね。

今回の質問文の添付図を見ると、日数・時間数が各セルに分かれていて、各セルには整数のみ記入するという意味ですよね?そうであれば、シリアル値を使わず整数のみで(時間の「分」のみで)最後まで計算することができるので、そういうときは前回も言ったとおり、誤差が発生する可能性を排除できます。


今回の条件で少し難しいのは、「0.5 日を時間に切り崩せない」という点ですね。1 日は崩せるが 0.5 日はできないというのは、たぶん休暇の制度上の制約なのでしょう。よくある話です。

午前と午後の勤務時間数は異なるかもしれませんが、0.5 日は、平均すれば 7 時間 45 分÷ 2 = 3 時間 52.5 分。半日なので、24 時間÷ 2 = 12 時間という見方もある。しかし例えば「0.0 日 4 時間 0 分」→「0.5 日 0 時間 7.5 分」と書き換えることはできず、逆に「0.5 日 0 時間 0 分」→「0.0 日 3 時間 52.5 分」あるいは「0.0 日 12 時間 0 分」とも書けないということですね。

だから半日を含む日数を単純に分に変換するのはダメで、日数の小数点以下を切り捨ててから(つまり半日のセルを除外した日数のまま)分に変換すれば、解決するということになりますね。


この回答の添付図には、次式を記入しています。

F3 =60*d3+e3
K3 =$F3*g3+60*i3+j3
Q3 =int((int(u3/f3)*2+h3-m3)/2)
R3 =mod(int(u3/f3)*2+h3-m3,2)
S3 =int(mod(u3,f3)/60)
T3 =mod(mod(u3,f3),60)
U3 =k3-p3

※ K3 セルをコピーして P3 に貼り付け
※「前年繰越」には「本年取得分」が合算されていると解釈

実は 0.5 という小数の場合は 2 進数に変換しても丸め誤差がないので、そのまま足したり引いたりしても大丈夫だったりもしますが、上式ではあえて整数のまま計算するため、2 を掛けたり割ったりしてみました。


質問文の帳票?の形に計算結果を並べたかったら、この回答の添付図のシートから質問文のシートに、VLOOKUP 関数なりで参照することによって転載すればいいだけですね。隙間なくセルの結合もなく、整然と並んだ表を元データにするのが基本です。方向を逆にしてしまう人が多いのですが。

なお表中の「7」と「45」という数値を材料にして時間のシリアル値を作ることも一応は可能なのですが、誤差の要因を生んでまでシリアル値を使う必要もないので、今回は行いませんでした。

「先日の相談」とは、こちらのことですね。

http://oshiete.goo.ne.jp/qa/8422338.html


前回の回答は計算誤差にまで話が及んで、難しくし過ぎましたかね。

今回の質問文の添付図を見ると、日数・時間数が各セルに分かれていて、各セルには整数のみ記入するという意味ですよね?そうであれば、シリアル値を使わず整数のみで(時間の「分」のみで)最後まで計算することができるので、そういうときは前回も言ったとおり、誤差が発生する可能性を排除できます。


今回の条件で少し難しいのは、「0.5 日を時間に...続きを読む

Qエクセルでの計算式もしくはシートの作り方 1日を7時間45分に

エクセルで年次有給休暇簿を作ろうとしています。
 作り方を教えてください

年休は時間単位で修得できます。 しかし,今年から勤務時間が8時間から7時間45分に変更になり累計の計算が煩雑になりました。

 今までは年休を1時間取る時は1/8と書いて
それを 累計していけば簡単にできました。
例えば 4/8の次に6/8をとると1と2/8
次に7/8をとると2と1/8と簡単でした。

今年度からは 4時間とって 次に5時間取ると合計9時間となり,
勤務時間が7時間45分なので 年休の累計は1日と1時間15分となると思います。
 何かいい計算式がありませんか?
(時間を分になおしたり いろいろしましたが,分かりませんでした。)

Aベストアンサー

日数で管理するのではなく、時間で管理したらいかがでしょう。
1は1時間、0.25を15分として計算します。
従って、1日分の勤務時間7時間45分は7.75となります。

例えば、A1に「休暇時間」、B1に「累計時間」、C1に「年休日数」、D1に「年休時間」と入れます。
A列に休暇時間を入力したら、B列にそれまでの累計が出るように式を入力しておきます。
B3が10の時、
C3に「=ROUNDDOWN(B3/7.75,0)」と入れて時間から日数を計算します。(1)
D3に「=B3-7.75*C3」とすれば、日数を除いた半端時間が計算できます。(2.25)
あとはA列に休暇時間を入力するごとに、B列~D列の計算式をコピーするだけです。

Qエクセルで年休を管理 (一日8時間単位で)

お世話になります。別の方の回答を参考にしましたが、うまくいきませんでした。http://oshiete1.goo.ne.jp/qa2676725.html
時間単位の年休管理をしたいと思っているのですが、表示の仕方がわかりませんので教えてください。
例えば、1日8時間勤務だとして、時間単位の年休が取れるとします。40日間の年休のある人が、1時間の年休を取った場合”39日7時間”、別の日に1日(8時間)取った場合”38日7時間”といったように表示させたいのですが、どのようにすればいいのでしょうか。関数について、あまり詳しくありませんのでよろしくお願いいたします。

Aベストアンサー

関数と言うより数式ですね。
要は、1日を8時間で計算したいのでしょう。
ならば、有給休暇を日数で管理せず、時間数で管理する方が楽でしょう。
40日なら320時間です。そこから時間数単位で減算していけば良いでしょう。
1日使ったら8時間として減算すれば良いわけです。
当然、減算につかうセルは、日と時間とで別セルにしておくなどの工夫は必要です。

あとは、何日何時間と表示したければ、その残り時間がセルA1に入っているとしたら、
=INT(A1/8)&"日"&MOD(A1,8)&"時間"
で表示用の計算ができます。

Qエクセル有給管理表を作りたい

エクセル2003です。エクセル初心者です。

現在有給管理表を作っています。
6ヶ月で10日、1年6ヵ月後で11日、2年6ヵ月後で12日有給がつきます。

基準年月日 2012/6/1

氏名 入社日 前年度から引き継いだ有給 次回有給付与日 次回有給付与数  使用数 残日数
鈴木          15日              2012/6/11      10日       2日    11日


こんな感じの表を作りたいのです。

(1)基準日を入れると自動的に現在の有給残日数が表示されるようにしたい。
基準年月日の部分に日付をいれるとその時点での有給残日数が表示されるようにしたいんです。

残日数は、前年度引き継いだ有給の数-使用数+次回有給付与数になると思うのですが、
この表の鈴木さんの場合、次回有給付与日は、2012/6/11になります。
基準日に2012/6/11以降の日付を入れると、残日数にその数も追加されるようにしたいんです。

(2)6ヶ月で10日、1年6ヵ月後で11日、2年6ヵ月後で12日有給つくのですが、3年6ヶ月で13日つくのですが、それも自動的に入力されるようにしたいんです。

わかりにくい文章ですいません。。
何かアイディアいただければと思います。

よろしくお願い致します。

エクセル2003です。エクセル初心者です。

現在有給管理表を作っています。
6ヶ月で10日、1年6ヵ月後で11日、2年6ヵ月後で12日有給がつきます。

基準年月日 2012/6/1

氏名 入社日 前年度から引き継いだ有給 次回有給付与日 次回有給付与数  使用数 残日数
鈴木          15日              2012/6/11      10日       2日    11日


こんな感じの表を作りたいのです。

(1)基準日を入れると自動的に現在の有給残日数が表示されるようにしたい。
基準年月日の...続きを読む

Aベストアンサー

次のようにしてはどうでしょう。
A1セルには基準年月日と文字を入力しB1セルに2012/6/1というように日付を入力します。
A2セルには氏名、B2セルには入社日、・・・・・G2セルには残日数とお示しの項目名を並べます。
そこでA3に鈴木などと入力しB3セルには入社日、C3セルには別のシートからVLOOKUP関数などで前年度における残り日数を表示させます。D3セルには次の式を入力し下方にドラッグコピーします。

=IF(B3="","",DATE(YEAR(B$1)-IF(AND(MONTH(B$1)>=1,MONTH(B$1)<=3),1,0),MONTH(B3)+6,DAY(B3)))

E3セルには付与日が来た時の付与日数ですが次の式を入力して下方にドラッグコピーします。

=IF(B3="","",IF(D3>=DATE(YEAR(B3)+2,MONTH(B3)+6,DAY(B3)),12,IF(D3>=DATE(YEAR(B3)+1,MONTH(B3)+6,DAY(B3)),11,IF(D3>=DATE(YEAR(B3),MONTH(B3)+6,DAY(B3)),10,""))))

F3セルはその年度のおける使用数を入力します。
G3セルには基準年月日での残りに数を表示させるために次の式を入力して下方にドラッグコピーします。

=IF(A3="","",IF(D3>B$1,C3-F3,IF(D3<=B$1,C3+E3-F3,"")))

なお、ここでは年度は4月1日から翌年の3月31日までが当該年度としています。

次のようにしてはどうでしょう。
A1セルには基準年月日と文字を入力しB1セルに2012/6/1というように日付を入力します。
A2セルには氏名、B2セルには入社日、・・・・・G2セルには残日数とお示しの項目名を並べます。
そこでA3に鈴木などと入力しB3セルには入社日、C3セルには別のシートからVLOOKUP関数などで前年度における残り日数を表示させます。D3セルには次の式を入力し下方にドラッグコピーします。

=IF(B3="","",DATE(YEAR(B$1)-IF(AND(MONTH(B$1)>=1,MONTH(B$1)<=3),1,0),MONTH(B3)+6,DA...続きを読む

Q有給休暇の繰越計算について

当社の規程では、有休の前年繰越は20日を限度として
次年度に繰り越されることになっています。
次の繰越日数の計算はどちらが正しいのか教えて下さい。
前々年度 有休付与日数   平成16年4月1日(14日)・・(A)
前年度    〃      平成17年4月1日(16日)・・(B)
今年度    〃      平成18年4月1日(18日)・・(C)
 ※有休取得日数      なし(多忙により1回も取得せず)

私としては繰越は上限20日なので、20日+18日(C)で38日と
思っていたのですが、会社からは次のような説明があり
(A)は法律で2年満了した時点で失効するため、
今年度の付与日数は(B)+(C)で34日ということでした。
本当に今年度の付与日数は34日で正しいのでしょうか?
入院を控えており、至急教えて下さい

Aベストアンサー

>今年度の付与日数は(B)+(C)で34日ということでした。
本当に今年度の付与日数は34日で正しいのでしょうか?

●はいそうです

限度20日は最高の付与日数に達してからです

勤務日数に応じて
6ヶ月経過後 最初に10日付与 それから1年経過ごとに付与日数が1日ずつ増えていきますですから 
ずっと使わない場合 
1年後(つまり勤務1年6ヶ月後)11日付与で 合計21日
2年後 12日付与で前年の11日と合計23日(最初の10日は2年経過したので消える)
3年後 13日付与で前年の12日と合計25日(前のの11日は2年経過したので消える)
4年後 14日付与で前年の13日と合計27日(前のの12日は2年経過したので消える
5年後 15日付与で前年の14日と合計29日(前のの13日は2年経過したので消える
6年後 16日付与で前年の15日と合計31日(前のの14日は2年経過したので消える
7年後 17日付与で前年の16日と合計33日(前のの15日は2年経過したので消える
8年後 18日付与で前年の17日と合計35日(前のの16日は2年経過したので消える
9年後19日付与で前年の18日と合計37日(前のの17日は2年経過したので消える

10年後20日付与で前年の19日と合計39日(前のの18日は2年経過したので消える

ということで 20日に達するまでは1日ずつ付与が増えていきます
付与の最大が20日なので 2年で最高は40日

前々年の付与日数未満の消化ですと 前々年は消えていきますから
その範囲の消化なら翌年改めて付与されるのでずっと増加していきます

>今年度の付与日数は(B)+(C)で34日ということでした。
本当に今年度の付与日数は34日で正しいのでしょうか?

●はいそうです

限度20日は最高の付与日数に達してからです

勤務日数に応じて
6ヶ月経過後 最初に10日付与 それから1年経過ごとに付与日数が1日ずつ増えていきますですから 
ずっと使わない場合 
1年後(つまり勤務1年6ヶ月後)11日付与で 合計21日
2年後 12日付与で前年の11日と合計23日(最初の10日は2年経過したので消える)
3年後 13日付与で前年の12日と合計25...続きを読む

Q7時間15分を1日と換算する計算について

恐れ入ります。
エクセルで以下の計算をしたいのですが、お知恵をお貸しください。

年次休暇の計算をエクセルでしたいと思います。
まず前提として、7時間15分をもって「1日休」と換算します。

そこで、ある人が16時間の時間休をとったとします。
セルに「16」と入力すると自動的に2日と1時間30分という「回答」をさせたいのです。

どのような計算式になるか教えていただけるとたすかります。

どうぞよろしくお願いします。

Aベストアンサー

A1=16なら
=TEXT(INT(TIME(A1,0,0)/"7:15")+MOD(TIME(A1,0,0),"7:15"*1),"d日とh時間m分")

A1=16:00なら
=TEXT(INT(A1/"7:15")+MOD(A1,"7:15"*1),"d日とh時間m分")

Qエクセルで打ち込んだ数字を自動で別シートに表示したい

エクセルでセルに打ち込んだ数字を自動で別シートに表示できる方法があれば、教えてください。

例えば、シート1のC1に5を打ち込んだら、シート2のD2にシート1で打ち込んだ5が自動で表示される。

また1列すべてを自動で表示させる場合、一つのセルの時と違いがありましたら教えてください。よろしくお願いします。

Aベストアンサー

こんばんは。
入力したセルの値を合計とかでなくて、
純粋に別のシートに自動的に表示したいのであれば、
以下の方法があります。

1.1つのセルだけの場合
例)シート1のC1に5を打ち込んだら、
  シート2のD2にシート1で打ち込んだ5が自動で表示される

⇒シート2のD2のセルをアクティブにして「=」を入力
 した後、シート1のC1をクリックする。
 そうするとD2のセルに「=Sheet1!C1」と表示され、値が自動的に
 表示されるようになります。

2.1列全てコピーしたい場合。
  コピー&リンク貼り付けを使うと便利です。

例)例)シート1のC1~C5に何かを入力したら、
  シート2のD2~D7にシート1で打ち込んだものが自動で表示される

  シート1にあるコピー元のセルを範囲選択して、
  シート2のD2の上で「右クリック」⇒「形式を選択して貼り付け」
  をクリックします。

  そして出てきた小さな画面の左下にある「リンク貼り付け」という
  ボタンをクリックすると完成です。
  試してみてください。。

  念のためにリンク貼り付けを図解しているURLを載せておきます。
  参考にしてみてくださいね。。
  http://www.geocities.jp/office_inoue/excel/eq21.htm

こんばんは。
入力したセルの値を合計とかでなくて、
純粋に別のシートに自動的に表示したいのであれば、
以下の方法があります。

1.1つのセルだけの場合
例)シート1のC1に5を打ち込んだら、
  シート2のD2にシート1で打ち込んだ5が自動で表示される

⇒シート2のD2のセルをアクティブにして「=」を入力
 した後、シート1のC1をクリックする。
 そうするとD2のセルに「=Sheet1!C1」と表示され、値が自動的に
 表示されるようになります。

2.1列全てコピーしたい場合。
  コ...続きを読む

QExcel:セルに入力されている日付の、半年後の日付を自動表示させたい

誰か教えてください。
A列のセルに「2004/3/4」という日付が入っていたとします。
A列の日付を参照して、B列に「半年後」、C列に「16ヶ月後」という日付を自動表示させたいのですが、そういう事って出来ますか?
出来るとしたらどんな関数を書けばいいのでしょう?
教えてください!

Aベストアンサー

こんにちは。maruru01です。

基本形(半年後)は、

=DATE(YEAR(A1),MONTH(A1)+6,DAY(A1))

です。
(16ヶ月後は、数式中の6→16にする)
ただし、月末の場合は問題があります。
例えばA1に、「2004/8/31」と入力すると、半年後は、「2005/3/3」になります。
これを、「2005/2/28」にするなら、数式を、

=MIN(DATE(YEAR(A1),MONTH(A1)+6,DAY(A1)),DATE(YEAR(A1),MONTH(A1)+6+1,))

とします。
また、分析ツールが利用出来るのなら、

=EDATE(A1,6)

としても、「2005/2/28」という日付が求まります。
なお、分析ツールは、メニューの[ツール]→[アドイン]→[分析ツール]にチェックをすると利用可になります。

Qエクセルで有給休暇の取得日数を管理しようとしています。

エクセルで有給休暇の取得日数を管理しようとしています。

例えば
1日=7時間45分とし、取得時間が8時間ならば"1日15分"と表示したいのです。

いくつか計算式を考えていましたが、うまく表示されませんでした。

どなたか計算式をご教示いただければ幸いです。

よろしくお願いいたします。

Aベストアンサー

時間数がセルA1に日付シリアルで設定されているとして。

まずは、データを分単位の整数に持ってきます。整数化しておかないと
演算時に妙な端数が出て正しく計算されない事がありますので。

[B1セル]:=A1*24*60

これが総取得時間(分)になります。これを、465分(7時間45分)ごと
に1日と数えればいいんですから

[C1セル]:=INT(B1/465)

これが日数になります。
元の「分」から「日数」に465を乗じた数字を引けば、1日の残りの
「分」が出てきます。

[D1セル]:=B1-C1*465

「分」のままじゃ表示できませんので、これを60で割って端数を切り
捨て、「時間」にします

[E1セル]:=INT(D1/60)

日と時間が分かったので、元の「分」からこれを引けばオッケー、

[F1セル]:D1-E1*60

文字列として「d日h時間m分」と出したいなら、必要なセルを"&"でひっつけて

[G1セル]:=C1&"日"&E1&"時間"&F1&"分"

これで行けるはずです。

時間数がセルA1に日付シリアルで設定されているとして。

まずは、データを分単位の整数に持ってきます。整数化しておかないと
演算時に妙な端数が出て正しく計算されない事がありますので。

[B1セル]:=A1*24*60

これが総取得時間(分)になります。これを、465分(7時間45分)ごと
に1日と数えればいいんですから

[C1セル]:=INT(B1/465)

これが日数になります。
元の「分」から「日数」に465を乗じた数字を引けば、1日の残りの
「分」が出てきます。

[D1セル]:=B1-C1*465

「分」の...続きを読む

QエクセルのIF関数で、文字が入力されていたならば~

エクセルのIF関数で文字が入力されていたならば~、という論理式を組み立てたいと思っています。

=IF(A1="『どんな文字でも』","",+B1-C1)

A1セルに『どんな文字でも』入っていたならば、空白に。
文字が入っていなければB1セルからC1セルを引く、という状態です。

この『どんな文字でも』の部分に何を入れればいいのか教えてください。

またIF関数以外でも同様のことができれば構いません。

宜しくお願いします。

Aベストアンサー

=IF(ISTEXT(A1),"",B1-C1)

でどうでしょうか?


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

人気Q&Aランキング

価格.com 格安SIM 料金比較