プロが教えるわが家の防犯対策術!

お世話になります。

エクセル2003形式です。

セルC1には年月を入力しています。表示形式は右クリック→セルの書式設定→表示形式→日付→2001年3月を選択し「0000年00月」表示させています。

そして、B9~B39までC1で入力した年月に該当する日付を表示させています。表示形式は右クリック→セルの書式設定→表示形式→ユーザー定義→dを入力し「1~31の数字」を表示させています。

C1セルの年月を入力した際、例えば2013年2月は29日~31日が必要なく(セルで言えばB36~B39)2013年11月は31日が(セルで言えばB39)が必要ありません。

セルC1に2013年11月を入力すると、セルB39は「1」が表示させます。これは次の月の2013年12月1日をエクセルファイルが判断して表示しているのでしょう。

そこで質問ですが、上記で書いた29日~31日で表示させる必要の無い箇所は「1」などと表示させず空白表示にさせる方法はありますか?

A 回答 (2件)

方法1)



B9に
=IF(MONTH($C$1-1+ROW(B1))=MONTH($C$1),$C$1-1+ROW(B1),"")
と記入、下向けにコピー。

#実際には29、30、31日のセルにだけこの並びの数式が記入されていればよい。


方法2)
B9に
=$C$1-1+ROW(B1)
と記入、下向けにコピー
セルの書式設定の表示形式は
d
を設定しておく

B37からB39までを選択(必ず行う)
書式メニューの条件付き書式を開始
セルの値が → 数式が に変更して
=MONTH(B37)<>MONTH($C$1)
と記入、書式ボタンでフォントの色をセルの塗色と同じ(たとえば白)にしてOKする。
    • good
    • 1
この回答へのお礼

なるほど、この様な方法もあるのですね!!
非常に参考になりました。
この度は非常に早い回答、ありがとうございました。
非常に助かりました。

お礼日時:2013/12/04 08:41

B10に =IF(B9="","",IF(DAY(B9+1)=1,"",B9+1))


B10の表示形式をユーザー定義でd
B10をB39までオートフィルコピー
以上で小の月の31及び閏年の2月の28日以降又は2月29日以降
が空白で表示されます。
    • good
    • 11
この回答へのお礼

この度は素晴らしい回答ありがとうございました。
おかげで助かりました。
この計算式を使用すると私の悩んでいた内容がバッチリ解決されました。

お礼日時:2013/12/04 08:40

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

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


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