人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

http://q.hatena.ne.jp/1229411743

上記のデータでまた質問です。
今度はIF関数になると思うのですが、、、データはかなり重いのでVBAは避けてください。

H列…長期休暇に入った日(病欠とか育児休暇とか)
I列…復帰日

が入ります。

O列からT列とW列からAB列に、H列に日付が入ったら「0」が自動的に入り、I列に日付が入ったら何も入っていない状態?「=""]の状態にしたいんですね。
2008年7月から2009年6月までのデータで、例えば
2008年9月26日から休みに入ったら9月からは「0」にしておいて、I列の復帰日が入力されたら何も入っていない?「[=""」の状態にしたいんです。
休みの期間だけ「0」ということなんです。

復帰日は何時かわからない状態なので解るまでは9月以降「0」のままで良いのですが。。
日にちも関係しているためどのように式を作ればよいのか??
教えてください。


●質問者: kanachan
●カテゴリ:コンピュータ
✍キーワード:2008年 2009年 6月 7月 9月
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● okap01
●15ポイント

日数とかの計算をしなくて、ただ、“0”を表示するだけなら、

2行目を例にとりますと、

=IF($I$2<>"","",IF($H$2<>"",0,""))

をO2:T2,W2:AB2にコピればいいのでは?

◎質問者からの返答

日数計算はしてると思います。長期欠勤中のみ「0」としたいので…

そのためでしょうか?

残念ながらうまくいきませんでした。

ごめんなさい。


2 ● Gay_Yahng
●55ポイント ベストアンサー

それでは美しくない関数の世界へ!

O1=2008/7/1

・・・・

AB1=2009/6/1

としてください。表示をユーザ定義でyyyymmとすると200807とかになりますので。かならずツイタチで。

20行目で作りますね。

O20=IF($H20<=P$1-1,IF(O$1<=IF($I20="",10000,$I20),0,""),"")

P20、Q20、R20、S20およびW20、X20,Y20,Z20,AA20はこのO20をコピー

T20=IF($H20<=W$1-1,IF(T$1<=IF($I20="",10000,$I20),0,""),"")

AB20=IF($H20<=AB17+29,IF(AB$1<=IF($I20="",10000,$I20),0,""),"")

ここで提案なんですが、Iが決まっていないときは3000/1/1とかダミーにしたらどうでしょう?空白だと入れ忘れかもしれませんがありえない3000年の日付を入れておけば決まっていないんだなって分かっていいかなと。

◎質問者からの返答

ありがとうございます!

関数の意味が理解出来なかったので次に生かせるのか疑問ですが、教えていただいたとおりに入れてみましたらうまくいきました!

何とか関数も理解できるようにしたいものです^^;

ありがとうございました。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ