- ベストアンサー
エクセル 月末日を一括で変換できますか
Excel2002です。 2007/1→2007/1/31 2007/2→2007/2/28 2007/3→2007/3/31 ↑ このようなかんじで年月しか入ってない日付を一括してその月の月末日を表示することは出来ますか? 1000件以上あるので、一セルずつ変えいていくのはとても大変です。 VBA以外で方法がありましたらお願いします! おわかりの方教えてくださーい!
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
#1の方の方法でも出来ますが、こんな方法もあります。 =EOMONTH(A1,0) これでA1の月の月末になります。 ※この関数の使用には、「ツール」「アドイン」「分析ツール」にチェックが必要です。
その他の回答 (4)
- nishi6
- ベストアンサー率67% (869/1280)
日付が入力されているとしたら、#1さんの =DATE(YEAR(A1),MONTH(A1)+1,1)-1 が分かりやすいですね。 要は、次の月の1日(月初めイッピ)の前日は今月の月末ということです。 =DATE(YEAR(A1),MONTH(A1)+1,0) と説明する場合もありますが、#1さんのように『-1』したほうが、『前日』をより強く表しているように思います。 文字列で入力(当然、yyyy/mmのようなフォーマット限定ですが)されているとすると、#4さんの回答では、月初めになってしまいます。 年が4桁なら月がどこにあるか分かるので、(6桁目から月) =DATE(LEFT(A1,4),RIGHT(A1,LEN(A1)-5)+1,0) でできるでしょう。
- imogasi
- ベストアンサー率27% (4737/17069)
質問者はエクセルの表示形式と値を十分区別して認識してない、不完全な質問です。 ●年月しか入ってない日付 が2つの場合があって (1)2007/1/23など入っていて、書式yyyy/mになっているので 2007/1と見えている場合 (2)書式ーセルー表示形式ー文字列で2007/1と入力されている場合 (1)の場合は既回答でOK (2)の場合は =DATE(LEFT(A1,4),MID(A1,FIND("/",A1)+1,(LEN(A1)-FIND("/",A1)))+1,1) など。
- zap35
- ベストアンサー率44% (1383/3079)
A1に2007/1という日付、もしくは文字列があるとき =EOMONTH(A1,0) =DATE(YEAR(A1),MONTH(A1)+1,0) で求められます。 そのセルを必要分コピーしてください
- hana-hana3
- ベストアンサー率31% (4940/15541)
隣の列に =DATE(YEAR(A1),MONTH(A1)+1,1)-1 と入れて、フィルでコピーしてください。
お礼
出来ました~~ ありがとうございました!!
お礼
お答えくださった皆様ありがとうございました。