A 回答 (7件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
入力されている値はシリアル値でなく単なる数字ですよね?
また、『20030214』と言う様に西暦4桁、月2桁、日2桁とかではないのですよね?
上記と違うのであれば、2003年1月14日と2003年11月4日が同じ値(2003114)となるため、どちらの日付か判断が難しいと思います。
この回答へのお礼
お礼日時:2003/11/09 18:24
なるほど、、、どうもありがとうございます
1月と11月のことは
すっかり考えに入っていませんでした
確かにそうですね…
そもそも2003214という記述自体に
無理がありました。
早くの御回答、ありがとうございました
No.2
- 回答日時:
セルの書式設定でよいとおもいます。
任意のセルを指定する
指定したセル内で右クリックする、
セルの書式設定を選択する、
日付 を選択する、
表示形式を選択して
OK でよい、
No.3
- 回答日時:
書き換えるだけなら
セルの書式設定→ユーザー定義で
「####"/"#"/"##」と入力して下さい。
ただ、この方法だと10月以降は適用されません。
10月を10月と認めさせるためには8桁で入力しないと・・・。
すべてが8桁でしたら
=LEFT(A1,4)&"/"&MID(A1,5,2)&"/"&RIGHT(A1,2)
で表示させ、
=TEXT(DATE(VALUE(LEFT(A1,4)),VALUE(MID(A1,5,2)),VALUE(RIGHT(A1,2))),"yyyy/m/d")
で、日付として認識させることができます。
が、一番問題なのが7桁と8桁が混在することのような気がします。
IF関数などを駆使して、7桁のときは先頭文字列から4文字目だけを8桁のときは4文字目と5文字目を月データとして抽出する必要がありそうです。
No.5
- 回答日時:
2003214なら2003/2/14と判断できますが、仮に2003111だったらどうなります?
2003/1/11ですか?2003/11/1ですか?YYYYMMDDといった並びの記載でないと判断がつきませんね。したがって変換は無理です。
No.6
- 回答日時:
すでに多数のセルに『2003214』といった形式で入力済みで、入力しなおすのが困難という状況と見ました。
書き換えについては、#3のHageoyaGさんの最後の式が非常にすばらしいように思えます。で、HageoyaGさんが指摘する問題点の7桁、8桁の混在ですが、6桁の場合(1月1日など)も考えられますので、IF関数でとても長い式になってしまいます。
=IF(A1>=10000000,TEXT(DATE(VALUE(LEFT(A1,4)),VALUE(MID(A1,5,2)),VALUE(RIGHT(A1,2))),"yyyy/m/d"),IF(A1>=1000000,TEXT(DATE(VALUE(LEFT(A1,4)),VALUE(MID(A1,5,1)),VALUE(RIGHT(A1,2))),"yyyy/m/d"),TEXT(DATE(VALUE(LEFT(A1,4)),VALUE(MID(A1,5,1)),VALUE(RIGHT(A1,1))),"yyyy/m/d")))
これは単純にHageoyaGさんの式をIF関数で6、7、8桁に対応できるようにしたものです。
しかし、一番厄介なのは#1のlistさんが指摘された、7桁のとき、月が2桁なのか、日が2桁なのかの判断が付かないことです。こうなるとお手上げです。上記の式は、7桁入力時に、月が1桁・日が2桁のときにのみ有効です。入力桁数を8桁固定にしておけば問題なかったのですが…。
今後入力する際は、#4のkotokoさんの言うように、[2/14]と入力しましょう。表示形式の選択無しでも[2003/2/14]と表示されます(Excel2002で確認)。ちなみに年の表示は現在の年表示になるので、年が明ければ同じように入力しても[2004/2/14]になります。
No.7
- 回答日時:
(1)A列にデータがあるとして、B列に=LEFT(A1,4)、C列に=MID(A1,5,LEN(A1)-4)といれます。
(2)B列2003、C列に121となったとします。
12月1日か1月21日かは、コンピュタには判りません。あなたが判断しなければなりません。
(3)そこで少ない方と思われる10月11月12月行だけあなたが判断してD列にサイン1桁をいれます。10-12月の時は「1」(何でも良い)をいれます。
(4)E列に=IF(D1=1,LEFT(C1,2),LEFT(C1,1))
と入れます。月がでます。
(5)F列に=IF(D2=1,MID(C2,3,LEN(C2)-2),MID(C2,2,LEN(C2)-1))といれます。日が出ます。
(6)後はB、E、F列を使って日付を作ります。
=DATE(B1,E1,F1)
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルの祝日に色が反映しない 4 2022/05/18 09:58
- Excel(エクセル) エクセルで、特定のセルの内容を更新すると、別の特定セルに 更新日付が自動的に表示させる方法はあります 1 2022/11/14 21:03
- Excel(エクセル) エクセルで条件付き書式を使わずにセルの文字の色を変える方法を教えて下さい 8 2023/07/28 01:15
- Excel(エクセル) エクセル365の関数。誕生日表記がおかしい 2 2022/10/17 18:52
- Excel(エクセル) Excel2019、2021の売り上げなどの集計表について 4 2022/11/29 14:03
- Excel(エクセル) エクセルでセルの値分の個数の数字列を自動で入れたい 8 2023/03/14 18:00
- Excel(エクセル) セルの上書き禁止について 5 2022/04/02 10:09
- Excel(エクセル) エクセルの「セル書式設定」 4 2022/08/29 16:42
- Excel(エクセル) DATEVALUE関数がエラーになる 2 2022/07/12 19:30
- Excel(エクセル) エクセルの値を元に図形の色を変えたい 2 2022/05/11 01:37
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
EXCELで○ヶ月を○年○ヶ月に変換...
-
エクセルの曜日表示が正しく表...
-
Excelで「20080707」を『2007/0...
-
リンク元の日付が空白の時リン...
-
斜線が入ったセルのカウント
-
エクセル 4ケタの数字を年月に...
-
睡眠時間の計算
-
エクセルで9と入力したら時刻...
-
エクセルで0101と入力→08年01月...
-
Excel 時間の表示形式 セルと...
-
【エクセル】数値にスラッシュ...
-
エクセルで関数のデータの後に...
-
EXCELで勝手に約分されてしまう
-
エクセルで会計期間を自動計算...
-
Excelのセルの書式設定(100...
-
エクセルでアポストロフィーが...
-
【Excel】24:00と表示したい!
-
Excelのセルに数字を入れるが、...
-
エクセルで1列に500行並んだデ...
-
A1セルに入力したら、入力時間...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
EXCELで○ヶ月を○年○ヶ月に変換...
-
リンク元の日付が空白の時リン...
-
Excelのセルに数字を入れるが、...
-
Excel2013 表示形式で「1,000...
-
Excelで「20080707」を『2007/0...
-
エクセルの曜日表示が正しく表...
-
斜線が入ったセルのカウント
-
【エクセル】数値にスラッシュ...
-
EXCELからCSVへ変換すると0が...
-
エクセルでアポストロフィーが...
-
エクセルで9と入力したら時刻...
-
エクセル 4ケタの数字を年月に...
-
EXCELで勝手に約分されてしまう
-
EXCEL (0.5)の表示の仕方
-
エクセルで日付を全角にしたい
-
Excelのセルの書式設定(100...
-
西暦から、曜日を表示⇒何も入力...
-
Excel 時間の表示形式 セルと...
-
【Excel】24:00と表示したい!
-
Excel 2010で軸の書式設定の変...
おすすめ情報