[[20080612091402]] 『出勤台帳 休日に○印をつける』(huu) >>BOT

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『出勤台帳 休日に○印をつける』(huu)

よろしくお願いします。

 A   B    C     D
日付 曜日 始業時間 退勤時間 
1
2
3
4
・
・
・
上記のようなタイムカードを作成しています。
土日、祝日をわかりやすく色をつけることはできたのですが
できれば色分けではなく、列を増やしてそこに○印(わかれば何でもいいのですが)
を、自動でつけたいと思います。
このようなことは可能なのでしょうか?
もし、可能なら教えていただけないでしょうか?
よろしくお願いします。


 曜日が文字列の場合です。
 =if(or(B1="土",B1="日"),"○","")

 こんなことですか?

 (1or8)

 衝突しましたがそのままアップ。

 >土日、祝日をわかりやすく色をつけることはできたのですが
 これはどのようにして行ったのでしょうか?
 これの応用でいけそうですが。
 (MARBIN)

早速のご回答ありがとうございます。
(1or8さんへ)
曜日には式が入っております。

(MARBINさんへ)
過去ログ検索して、ケンさんの紹介文から

A1に2003と入力

 A2でデータメニューの【入力規則】で【入力値の種類】をリストにし、
【元の値】に1,2,3,4,5,6,7,8,9,10,11,12 と入力して、リスト選択できるようにします。
次に【セルの書式設定】【表示形式】「ユーザー定義」で 0"月" とします。
A3に =DATE($A$1,A2,1) と入力します。
A4に =A3+1 と入力、
A3:A4を選択して右クリックメニューの【セルの書式設定】【表示形式】「ユーザー定義」で d"日" とします。
A4をA33までコピーします。
B2に曜日、B3に =TEXT(A3,"aaa") と入力し、B3のフィルハンドルをダブルクリックしてコピーします。
これで、A2のリストで月を選択すれば、日付と曜日が表示されます。
【おまけ】月末まで表示し、土曜日は青色、日曜日は赤色に設定
A3:B33を選択して、
A3:B33の範囲を選択して、書式メニューの【条件付き書式】で
条件1 「数式が」→=MONTH($A3)>$A$2 として、【書式】でフォント色を白色にします。
【追加】をクリックして、
条件2 「数式が」→=$B3="土" として、【書式】でフォント色を青色にします。
【追加】をクリックして、
条件3 「数式が」→=$B3="日" として、【書式】でフォント色を赤色にします。

上記とまったく同じ方法で行いました。
よろしくお願いします。


 >祝日
 これを見落としていました・・・ ^^;

 ご説明だと祝日の色分けはできていないようなのですが・・・ 
 祝日リストとかあるのですか?
 これがなければ祝日に○を付ける事はできません。

 祝日は対応していませんが、
 E2=if(or(B1="土",B1="日"),"○","") とすれば○が表示されると思います。
 やりたいことのイメージはこんなことなんですか?

 (1or8)

 元スレはこちらのようです。

[[20030921090345]]『曜日を自動で』(超初心者)

[[20030514232746]]『カレンダーの曜日振り分け』(犬吉)

[[20020620172506]]『月から日まで自動で入力したい』(ぱおぱお)

 (MARBIN)

 祝日一覧を作成して、「shukulist」などと名前の定義しておけば、
 参照するのに楽になります。
 日付けがCOUNTIF関数の戻り値が0でなければ、祝日リストに含まれ
 ていると判定できます。
 (MARBIN)

(1or8さんへ)

ご説明だと祝日の色分けはできていないようなのですが・・・

実はそうなんです。

条件1 「数式が」→=$B3="祝日" として、

【書式】でフォント色を赤色にしたのですが

祝日を認識されていないのです。なぜでしょうか?

E2=if(or(B1="土",B1="日"),"○","") とすれば○が表示されると思います。

はい、こちらはできました。ありがとうございました。

(MARBINさんへ)

実は別シートで祝日リストを作っています。

1月1日 元日

1月13日 成人の日
2月11日 建国記念の日

3月21日 春分の日

4月29日 昭和の日

5月3日 憲法記念日
5月4日 国民の日

5月5日 子供の日
5月6日 振替休日

7月21日 海の日
9月15日 敬老の日

9月23日 秋分の日

10月13日 体育の日

11月3日 文化の日

11月23日 勤労感謝の日

11月24日 振替休日

12月23日 天皇誕生日

範囲名を祝日としておりますが、1or8さんにも書きましたように

祝日が認識されていないのです。

なぜでしょうか?

何度も申し訳ありませんがよろしくお願いします。


 再掲です。

 >日付けがCOUNTIF関数の戻り値が0でなければ、祝日リストに含まれ
 ていると判定できます。
 (MARBIN)

(MARBINさんへ)
何度もご回答ありがとうございます。

A3に =DATE($A$1,A2,1) としていますが

日付けがCOUNTIF関数の戻り値が0でなければ、祝日リストに含まれ
 ていると判定できます。

がよく分からないのですが、具体的にどのようにすればいいでしょうか?

何度もご回答いただいているのに申し訳ありませんが教えていただけないでしょうか?

よろしくお願いします。


 条件付き書式の数式の方です。
 >条件1 「数式が」→=$B3="祝日" として、 

 =COUNTIF(祝日,B3)<>0
 (MARBIN)

ご回答ありがとうございます。
条件1 「数式が」→=$B3="祝日" と入力しているのですが

認識されていないのです。

本当に初心者質問で申し訳ないのですが

=COUNTIF(祝日,B3)<>0は
どちらに入れればいいのでしょうか?

本当にすみません。

ずっと名前忘れていました。(hoo)


 条件付き書式の「数式が」に入れます。
 > 「数式が」→=$B3="祝日"
 これの代わりに入れてください、ということです。
 (MARBIN)

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

「数式が」→=$B3="祝日"

入力しましたがやはり祝日認識できないです。
基本的なことが間違っているのでしょうか?

私が作成したのは

sheet1に上記計算式を入れタイムシートを作っています。

sheet2に祝日リストを作り、範囲名を祝日としています。

 「数式が」→=$B3="祝日"

この祝日が違うsheet(shhe2)なので認識されていないのでは?

と思ったのですが違うでしょうか?

何度もお答えいただいているのに、まだ解決しなくて申し訳ありません。


 私には説明能力がないようです。
 お手上げです・・・。
 (MARBIN)

こちらこそ理解力がなくて申し訳ありませんでした。
お時間割いていただきましてありがとうございました。
(hoo)


 もしかして、祝日のリストは一つのセルに「5月5日 こどもの日」と入っていませんか?

   A      B

 1 5月5日  こどもの日

 のような形にしないとダメでは? はずしてるかな。    
 微調整しました(ぷーのすけ)
 


 いいのかなぁ〜? と思いつつお邪魔します。 つ、衝突。。。つつ、衝突。。。。 以下、そのままです。
また、1or8さん・MARBINさんご提示の式を勝手に引用させていただきます。

 ○を付けるのと色を付ける(条件付き書式)のとが、ゴッチャになっている気がします。

 ・色を付ける場合(条件付き書式)
祝日の場合も日曜日と同じ書式にするようなので、現状の
 >条件3 「数式が」→=$B3="日" として、【書式】でフォント色を赤色にします。
                    ~~~~~~~~~この部分を
=OR($B3="日",COUNTIF(祝日,$A3)<>0)=TRUE とされてはいかがでしょう。
    -A------ =B==================
AかBのどちらかがTRUEの場合にOR関数により式全体がTRUEとなります。
A→ B3セルの関数式の戻り値が "日" と同じか否か?
B→ 祝日 と名前の付いた範囲でA3セルの関数式の戻り値の日付のカウントが0以外か否か?
(注意_1)
数式内で 祝日 と "祝日" とでは、意味合いが異なります。
前者は、該当BOOK内のどこかのシートのどこかのセル範囲(1セルのみも含む)に対して付けられた【名前】を指し、
後者は、祝日という【文字列】を指します。
※名前を付けることにより、他シートへのセル参照指定を許さない入力規則や条件付き書式でも、
名前による参照指定により可能となります。
(注意_2)
現状設定されているA列は、日付を表す数値が戻り値になっています。B列は、曜日を表す文字列が戻り値となっています。

 ・○を付ける場合
土日での指定の式 =if(or(B1="土",B1="日"),"○","") に、祝日リストに存在する場合の条件を足して
=IF(OR($B3="土",$B3="日",COUNTIF(祝日,$A3)<>0),"○","") としましょう。

 ◆祝日リストにおける注意点◆
対応済みかもしれませんが、入力された日付は、指定した年もしくは入力した年になっているはずです。
毎年の更新を中途半端に行なって、使用したい年と異なったままの日付を残すと、
折角の祝日リストが無意味なものとなります。
更新時は、必ず年から行なってください。
また、リスト作成の際に、別セルに年を指定される既出の方法も有効かと思います。
(sin) あいかわらずのヘタな文ですが、読めます?

衝突しましたので、お礼の順序が間違っていましたら失礼します。

(ぷーのすけさんへ)

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

確かに

1月1日となっておりました。ありがとうございました。

すぐ変更(2008/1/1)したのですがやはり認識しませんでした。

条件1 「数式が」→=COUNTIF(祝日,B3)<>

条件2 「数式が」→=$B3="土" として、【書式】でフォント色を青色。

条件3 「数式が」→=$B3="日" として、【書式】でフォント色を赤色。

土日は赤青に変わるのですが、祝日だけがだめなんです。

ちなみに 条件1を入れたとき書式のプレビューは赤色になっていますが

文字が映っていません。

条件2と3は色+文字が映っているのですが。

(sinさんへ)

ご丁寧にありがとうございます。

確かに色づけ、○印と頭がごちゃごちゃになっていました。

そこで土日祝を色づけせず、丸印のみつけるタイムシートを新たに作りました。

(条件付書式は一切しておりません)

C3(丸印をつけるため追加した列です)

=IF(OR($B3="土",$B3="日",COUNTIF(祝日,$A3)<>0),"○","") 

としたのですが

#REF!となります。

それとA1の日付が】「ユーザー定義」で d"日"となっていましたので

こちらも2008/1/1のように訂正しましたがだめでした。

ちなみに

=IF(OR(B3="土",B3="日"),"○","")だと、土日は丸印つくのですが、

やはり何か間違っているのですね?


 =IF(OR(B3="土",B3="日",祝日=A3),"○","")
 Ctrl + Shift + Enter で数式確定
 これでどうでしょうか?

 (1or8)

(1or8さんへ)

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

Ctrl + Shift + Enter で数式確定

確定すると{}がつきますよね?やはり#REF!となります。

みなさん、たくさんのご回答頂いているのに

出来ていない自分が情けないです...


 まず、上記の書き込みにおける矛盾点を列記します。(書き間違い、漏れ等を含みます。)
 >条件1 「数式が」→=COUNTIF(祝日,B3)<> 
正しくは、 =COUNTIF(祝日,A3)<>0 ではないですか?
                         ==   =  ← この部分。 A3は、日付を表示しているセルですよね?
また、上記条件における書式の設定が抜けています。(多分書きもれでしょうが) 
それと、このA3セルの日付は、祝日リストに存在しますか?

 次に、以下の点をご確認下さい。
・祝日リストの日付の書式設定は、どうなってますか?
・2008/1/1と入力しているセルがA2とした際、C2セルに =TYPE(A2) と入力すると 何になりますか?
※この二点は、同じ様な事を確認したいだけです。
・#REF!となるという事は、無効な範囲等が存在する際に出ます。
 祝日リストの構成を調べて下さい。
 まず、【挿入】-【名前】-定義 で 窓内に『祝日』と出ている部分をクリックした際、参照範囲はどうなっていますか?
 次に、その参照範囲(シート・セル範囲)の構成が正しいか確認?分りずらければ、
  全てこちらに書き込んでください。コピペでも結構です。
(sin)

 おかしいですね〜
 huu さんの2番目のレスのケンさんの紹介文とある方法で表を作成し、
 ご自身ご提示の祝日リストを別シートにコピペして名前の定義を祝日にしただけなのですが…

 上記の sin さん確認事項を試してみて下さい。

 (1or8)

(sinさんへ)

たびたびのご回答ありがとうございました。

・祝日リストの日付の書式設定は、どうなってますか?

分類が日付、種類は1997/3/4です。

・2008/1/1と入力しているセルがA2とした際、C2セルに =TYPE(A2) と入力すると 何になりますか?

数字の1です。

 祝日リストの構成を調べて下さい。
 まず、【挿入】-【名前】-定義 で 窓内に『祝日』と出ている部分をクリックした際、参照範囲はどうなっていますか?

=祝日リスト!$A$1=$B$17です。

(祝日リストというのはsheetの名前です。)

  A   B 
1月1日   元日
1月13日  成人の日 
2月11日  建国記念の日 
3月21日  春分の日 
4月29日  昭和の日 
5月3日   憲法記念日 
5月4日   国民の日 
5月5日   子供の日 
5月6日   振替休日 
7月21日  海の日 
9月15日  敬老の日 
9月23日  秋分の日 
10月13日 体育の日 
11月3日  文化の日 
11月23日 勤労感謝の日 
11月24日 振替休日 
12月23日 天皇誕生日 

(範囲名祝日です)

=COUNTIF(祝日,A3)<>0 ではないですか?
                         ==   =  ← この部分。 A3は、日付を表示しているセルですよね?
ありがとうございます。私のミスでした。祝日も赤くなりました。

なんと単純なミスでたくさんの方にご迷惑おかけしまして申し訳ありませんでした。

A3は日付です。

何度も何度も申し訳ありません。


ご回答いただいた皆様へ

長い長いお時間頂きまことにありがとうございました。

今1からやり直したところ解決いたしました。

お一人お一人に感謝申し上げます。

長い文面にご丁寧にご回答いただきありがとうございました。

今後もっと勉強し、今度は私が何か答えてあげれるようになりたいと思います。

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


 う、アップしようとしたら解決してた...んじゃ、消し////

 これは、残しとこ。決して意地悪の意味ではありませんのでw
 >=祝日リスト!$A$1=$B$17です。 
=祝日リスト!$A$1:$B$17 ですよね?
半角全角、=: 等々で随分と意味合いが変りますので、日頃より注意された方がいいですよ。。。
(sin)

お礼遅くなり申し訳ありません。

上記の注意点頭によく入れておきます。

たくさんのご回答及び、ご意見

ご丁寧に頂きありがとうございました。


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.