
エクセルで、スケジュール表を作っています。
セルA4の行から1月1日~となっていきます。
日付の部分が、セルの表示では「1月1日」と出ているのですが
fxの欄には「=A1」と出ます。
以下、「1月2日」→「=A4+1」、「1月3日」→「=A5+1」・・・です。
ちなみにA1には「2008年」と表示されますが、ここもfxの欄は「2008/1/1」となっており、
ここの年数を変えると自動で1年分の日付・曜日が変わるようになっています。
ここまで他の人が作ったので、どうやってこういう設定にしたのか分かりません・・・。
この状態で、祝日に該当する日だけ、その祝日名が出るような列を作りたいんですが、
IF関数で日付を参照しようにも、「IF(A4="1月1日","元旦","")」にしても
「IF(A4="=A1","元旦","")」にしても、うまく「元旦」と出ません。
(エラーにはならないんですが・・・。)
こういう、セルとfx欄で出力される文字が違うようなセルを参照するには、どうしたらよいですか?
教えて下さい。
No.6ベストアンサー
- 回答日時:
日付の参照の方法については解決されているようなので、一言アドバイスを
回答の中に
「祝日表を作成」
と書いている人がいますが、
意味がないです。
なぜならば、祝日は年によって日付が違うからです。
たとえばハッピーマンデーや国民の祝日がそれに該当します。
敬老の日:2009/9/21
国民の祝日:2009/9/22
秋分の日:2009/9/23
と作成しても
2010年には祝日表を修正しないといけませんよね。
毎年変わる祝日にも対応できるような祝日表は
マクロでも使わない限り無理でしょう。
であれば、
毎年祝日表をメンテナンスすればよい・・・
とお考えであれば、
祝日を表示する部分(列)をダイレクトで修正すればいいだけですよ。別にVLOOKUPとか使って祝日表から引っ張ってくる必要などないですから。
祝祭日の数は年によって違いますし、
祝祭日表の行挿入、削除の手間もありますから。
その点も考慮し、
自動表示にするのか、手入力するのか
検討してみてください。
回答ありがとうございます。
マクロでも使わない限り無理ですか・・・。
きちんとエクセルの勉強をしたことがない自分には
難しいみたいですね・・・。
とりあえず自動表示にチャレンジしてみて、
頭パンクしたら手入力にしようと思います;;。
ありがとうございました。
No.5
- 回答日時:
下のURLが参考になりますよ。
祝日については、【特徴2】の【祝日を表示編】 をクリックすると祝日の表示の方法がでます。
エクセルでカレンダー【Excel活用術】
http://kokoro.kir.jp/know/calendar1.html
なお、Excelでは、日付はシリアル値で管理され、セルの表示形式により1月1日と表示されているだけです。
したがって、「IF(A4="1月1日","元旦","")」又は「IF(A4="=A1","元旦","")」でも元旦と表示されないのです。
また、数式としては誤りではないため、エラーとはなりません
説明しきれませんんので次のURLで勉強をしてください
日付と時刻に関する知識
http://www3.tokai.or.jp/excel/kansu/hiduke.htm
シリアル値について理解できました。
どうもありがとうございました!
祝日に関してですが、そのURLに載っている方法だと
毎年の祝日を自分であらかじめ表として作っておかなければなりませんよね。
そうではなくて、年数さえ変えれば50年先や100年先の日付・曜日・祝日まで分かるような状態にしたいので、
祝日も関数で出るようにしたいです。
それはまた今回の質問とは別件なので、勉強してみます。
分からなかったら、またここで質問するかも^^;
No.4
- 回答日時:
A4には"1月1日"が入っているわけではないので、
思うように表示されないのでしょう。
実はA4には「39448」というシリアル値が入っていて、
書式設定 m"月"d"日" によって "1月1日"
と表示されているに過ぎません。
ですので、IF文を使うにも
シリアル値で比較するか
=IF(A4=DATEVALUE("2008/1/1"),"元日","")
とします(1/1は「元旦」ではなく「元日」です)
しかし、この数式では、
元日以外の祝祭日が表示されませんので、
祝祭日すべてを表示させるには
別の方法を検討しないといけないと思います。
この質問は「日付の参照の方法」なので、
祝日を表示する質問は、タイトルを変えて改めて質問したほうが、
目的の回答を得られると思います。
祝日判定は厄介ですので
http://www.h3.dion.ne.jp/~sakatsu/holiday_topic. …
を参考にしてみてください
参考URL:http://www.h3.dion.ne.jp/~sakatsu/holiday_topic. …
No.3
- 回答日時:
>セルとfx欄で出力される文字が違うようなセルを参照するには、どうしたらよいですか?
⇒文字列に統一する案は如何でしょうか。
(1)休日表を作成。仮にsheet2のA列に'1月1日(先頭にアポストロフィ付加)、B列に休日名称
(2)=IF(COUNTIF(sheet2!A:A,TEXT(A4,"m月d日")),VLOOKUP(TEXT(A4,"m月d日"),sheet2!A:B,2,FALSE),"")として下方向にコピー
回答、ありがとうございます。
年数を変えると自動で日付と共に祝祭日もその年のものに変わるように
作りたいので、そこは別途、関数で何とかしようと思います。
No.2
- 回答日時:
Excel では、日付(時刻)の情報はシリアル値(1900年1月1日を基準に1、1900年1月2日を2と定めている。
2008年1月1日は、39448です。)で処理しているので、比較する場合もシリアル値で行う必要があります。このような場合、欄外にスケジュール表と同じ書式で 「1月1日」「元旦」(X1セルとY1セル)のような、祝祭日の一覧表を作成します。 この一覧表の日付とスケジュール表の日付とを比較するような作りにすれば、シリアル値を意識する必要はなくなりますよ。
回答、ありがとうございます。
別枠で祝祭日の一覧表を作成する方法でも良いのですが、
年数を変えると自動で日付と共に祝祭日もその年のものに変わるように
作りたいので、そこは別途、関数で何とかしようと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
表計算ソフトでの様式の呼称
-
【画像あり】【関数】指定した...
-
エクセルでフィルターした値を...
-
勤怠表について ABS、TEXT関数...
-
エクセルシートの見出しの文字...
-
【マクロ】実行時エラー '424':...
-
エクセルに写真が貼れない(フ...
-
【マクロ】左のブックと右のブ...
-
他のシートの検索
-
vba テキストボックスとリフト...
-
【マクロ】数式を入力したい。...
-
【マクロ】元データと同じお客...
-
【画像あり】オートフィルター...
-
Office2021のエクセルで米国株...
-
エクセルの複雑なシフト表から...
-
エクセルのVBAで集計をしたい
-
【関数】3つのセルの中で最新...
-
【マクロ】【相談】Excelブック...
-
【マクロ】【配列】3つのシー...
-
【関数】=EXACT(a1,b1) a1とb1...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【マクロ】実行時エラー '424':...
-
エクセルのVBAで集計をしたい
-
Office2021のエクセルで米国株...
-
【画像あり】オートフィルター...
-
vba テキストボックスとリフト...
-
他のシートの検索
-
【マクロ】【相談】Excelブック...
-
【マクロ】【配列】3つのシー...
-
【マクロ】元データと同じお客...
-
【マクロ】数式を入力したい。...
-
【マクロ】左のブックと右のブ...
-
エクセルの関数について
-
エクセルのリストについて
-
【マクロ】変数に入れるコード...
-
エクセルシートの見出しの文字...
-
【マクロ】excelファイルを開く...
-
【関数】3つのセルの中で最新...
-
エクセルの複雑なシフト表から...
-
【マクロ】【画像あり】❶ブック...
-
LibreOffice Clalc(またはエク...
おすすめ情報