• 締切済み

誕生日までの残り日数

excelのG1からG20に生年月日を入力してあります。F列には名前が入っています。 この生年月日を元に、次の誕生日までの日数を調べる方法を教えてください。 佐藤一郎 2000/8/26  Happy Birthday 鈴木次郎 1000/8/27 1 上のように残り日数が0のとき、つまり今日が誕生日の時はHappy Birthdayと表示させたいです。 また、今日が誕生日の時は 名前、生年月日、Happy Birthdayの文字のセルを青で塗りつぶしたいと思っています。 このようなことはできるのでしょうか? どうやっていいのかわからないので、教えてほしいです。よろしくお願いします。

みんなの回答

回答No.3

G列に生年月日があると、誕生日を表す文字列は =text(G1,"mmdd") と書けます。これと今日の日付text(today(),"mmdd")の差 =text(G1,"mmdd")-text(today(),"mmdd") が「今年の」誕生日までの日数です。ここでその符号に注目して 正の値:そのままの数値を返す ゼロ: "Happy Birthday"を返す 負の値:来年の誕生日までの日数を返す なので、sign関数とchoose関数を使って分岐条件を書くと =choose(sign(text(G1,"mmdd")-text(today(),"mmdd"))+2,負,零,正) となり、来年の誕生日はdate(year(today())+1,month(G1),day(G1)) なので全体は =choose(sign(text(G1,"mmdd")-text(today(),"mmdd"))+2, date(year(today())+1,month(G1),day(G1))-today(), "Happy Birthday", text(G1,"mmdd")-text(today(),"mmdd")) となります。

  • gyouda1114
  • ベストアンサー率37% (499/1320)
回答No.2

画像でH2に =IF(DATE(YEAR(TODAY()),MONTH(G2),DAY(G2))-TODAY()=0,"Happy birthday",IF(DATE(YEAR(TODAY()),MONTH(G2),DAY(G2))-TODAY()<1,DATE(YEAR(TODAY())+1,MONTH(G2),DAY(G2))-TODAY(),DATE(YEAR(TODAY()),MONTH(G2),DAY(G2))-TODAY())) 下方にオートフィル 条件付き書式でH2から下方を選択し 条件付き書式 → 新しいルール → 「数式を使用して、書式設定をするセルを決定」 → 次の数式を満たす場合に値を書式設定の欄に=$H3="Happy Birthday" → 書式で塗りつぶしの色を設定

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.1

F列に名前、G列に生年月日、H列に誕生日までの残り日数や当日にはHappy Birthdayと表示し、また、誕生日には文字のセルを青で塗りつぶすのでしたら次のようにします。 H1セルには次の式を入力し下方にオートフィルドラッグします。 =IF(TODAY()>DATE(YEAR(TODAY()),MONTH(G1),DAY(G1)),DATEDIF(TODAY(),DATE(YEAR(TODAY())+1,MONTH(G1),DAY(G1)),"d"),IF(TODAY()=DATE(YEAR(TODAY()),MONTH(G1),DAY(G1)),"Happy Birthday",DATEDIF(TODAY(),DATE(YEAR(TODAY),MONTH(G1),DAY(G1)),"d"))) 文字のセルを青く塗りつぶすためには次にようにします。 エクセル2007の例ですが F1からH20までのセル範囲を選択します。 「ホーム」タブから「条件付き書式」をクリックし「ルールの管理」を選択します。 「新規ルール」をクリックします。 「数式を使用して、書式設定するセルを決定」を選択します。 数式の窓には次の式を入力します。 =$H1="Happy Birthday" 「書式」をクリックして「塗りつぶし」のタブで背景色に青色を選択しOKします。

関連するQ&A

  • エクセル関数で誕生日までの残りの日数を表示する方法は?

    エクセル関数で「=date()」で当日の年月日を表示できますが、次の誕生日までの残りの日数を自動表示させるには、どうしたらいいでしょうか?例えば、誕生日が2008年の6月14日だとして、教えていただければ幸いです。よろしくお願いいたします。

  • FacebookにもIPのようなものがあるの?

    自分はFacebookをやったことがなく、知識がないので教えていただきたいのですが… Eメールや、ブログにコメントしたりすると、相手にこちらのIPアドレスなどが分かってしまいますよね? (Facebookには、足跡機能は無いとは聞いたのですが…) 例えば、自分の名前が「「山田太郎」だとします。 でも、まだFacebookがうまく使えないので、「鈴木一郎と」いう仮のアカウントを作って練習(?)するとします。 (Fbは本名がルールなのは知っていますが、下手な失敗をすると恥ずかしいのでちょっと練習したい…) で、鈴木一郎が、面識はない「佐藤次郎」と友達になって、佐藤次郎のところに訪ねているとします。 そして、後になって、本名の山田太郎として交信を始めたとき、 佐藤次郎は「鈴木一郎と山田太郎が同一人物」だと分かる術はあるのでしょうか? つまり、佐藤次郎には二人のIPアドレスのようなもの(?)が判って、「あれ?この二人同じじゃん!」って分かってしまうのでしょうか? 教えてください。

  • 条件にあった複数データを組合わせて別のセルに表示するには?

    例えば、以下のデータがセルに入っていたとして A列には姓 B列には名 A1:鈴木  B1:一郎 A2:鈴木  B2:次郎 A3:鈴木  B3:三郎 A4:佐藤  B3:あきら A5:佐藤  B3:けんた 同じ姓にあてはまるデータの名を、組合わせて別のセルに表示したいのです。 結果イメージ C1:鈴木  D1:一郎 次郎 三郎 C2:佐藤  D2:あきら けんた このようなことAccessかExcelで出来ますか?

  • Excel2003でセル内の一部の文字をまとめて消去したい

    佐藤一郎・田中次郎 鈴木一太郎・山田三郎      ・       ・ と、ひとつのセル内に名前が二つ・を挟んで入力 されていて、同じ列に並んでいます(A1~A100の様に) セル内の右(または左)の名前と・をA1~A100迄 いっぺんに消去したいのですがマクロまたはVBAで 出来るのでしょうか。 どなたかご教示を。

  • エクセルの同じ名前をカウントする方法

    エクセルの同じ名前をカウントする方法 初歩的な質問ですみません。 山田太郎 田中一郎 鈴木三郎 高橋次郎 鈴木三郎 高橋次郎 鈴木三郎 A1のセルにこういった状態で名前が入力されていた場合に 山田太郎 1 田中一郎 1 鈴木三郎 3 高橋次郎 2 となるように同じ名前がいくつあるかをカウントさせ上記のように表示させたいのですが、 どうしたらいいのでしょうか? (同じシートでも、別のシートでもどちらでも構いません) 至急お答えいただけるとありがたいです。 よろしくお願いします。 

  • エアメールの宛名の書き方について

    海外にホームスティする知人にエアメールを送りたいのですが、宛名はどのように 書けばいいのか分からなくて困ってます教えてください。 ポイントはホームスティなので知人の名前だけでは配達されないと思われる ところです。 日本なら、「鈴木一郎様方 佐藤次郎様」で良いのですが英語では どう書けばよいのでしょうか、教えてください。 仮に、ホストファミリーのご主人を「Jerry Smith」、知人を「佐藤次郎」 としたらどうなるかで教えていただければありがたいです。

  • 誕生日に

    カフェなどで「今日彼女誕生日なのでバースデーケーキ作って下さい」 って言えば時間かかっても作ってくれるものでしょうか? 似たようなことしたこある方教えて下さい。

  • 昨日は誕生日おめでとう!を英語で

    昨日は誕生日おめでとう、と英語で言いたいのですが、 普通にHappy Birthdayだけでも問題ないでしょうか? 一応昨日メッセージは送り、今日直接会う予定があるので言おうと思っています。 やはりhappy birthdayだけだと、「今日は誕生日おめでとう」というニュアンスになりますか? その場合Happy birthday for yesterday. などでいいでしょうか?

  • 日数の計算について

    いつもお世話になっています。 セルA1に入力した年月日を開始日として セルB1に入力した年月日を最終日とします。 1.その間の日数を開始日を含んだ日数でセルC1に入力したい。 2.もしA1とB1に何も入っていない場合は何も入れない状態にしたい こんなときはどんな関数を使えばかんたんに出来るでしょうか? 説明がいまいち下手ですみません。 よろしくお願いします。

  • 誕生日のメッセージ

    誕生日のお祝いケーキに、メッセージプレートお名前プレートをつけようと思っています。 お名前を漢字にしたい場合、「Happy Birthday」より「お誕生日おめでとう」 がいいですか? 大人っぽく仕上げたいので、全部英語表記が無難ですか?

専門家に質問してみよう