• ベストアンサー

<Excel>数字の羅列になっている日付データをxxxx/yy/zzの形式に変換したいのですが。

EXCEL(2000)についてお知恵を拝借致したく。 一つのセルに入っている20030605のような数字の羅列になっている日付データを別のセルに2003/06/05というスラッシュ入りの形式に変換して表示させたいのです。 セルの書式設定ではできません。 関数を使用して何かいい手はないでしょうか。

質問者が選んだベストアンサー

  • ベストアンサー
  • arukamun
  • ベストアンサー率35% (842/2394)
回答No.2

こんにちは 20030605が入っているセルがA1セルだとして、 =LEFT(A1,4)&"/"&MID(A1,5,2)&"/"&RIGHT(A1,2) でいいと思います。 もし、正しいシリアル値にするのであれば、 =DATE(VALUE(LEFT(A1,4)),VALUE(MID(A1,5,2)),VALUE(RIGHT(A1,2))) とすれば、表示形式やさらに関数を追加して =TEXT(DATE(VALUE(LEFT(A1,4)),VALUE(MID(A1,5,2)),VALUE(RIGHT(A1,2))),"yyyy/m/d") のようにも使えます。 ご確認ください。

poppo3
質問者

お礼

丁寧にありがとうございます。試してみます。

その他の回答 (4)

  • dejiji-
  • ベストアンサー率38% (327/858)
回答No.5

数値は20030605というように8桁で表示されていれば関数を使用しなくても一括変更できます。この数値を日付として認識させる方法は(あくまで8桁の場合です。) データの入ったセルを選択し、データ→区切り位置を選択してそのまま2回次へ(何も変更する必要はありません。)から最後に日付を選択すれば日付に変更できます。 但し、日付形式としては2003/06/05ではなく、2003/6/5となってしまいますが。もし、2003/06/05が必要なら、セルの書式設定でユーザー設定からyyyy/mm/ddとすれ2003/06/05と表示されますが。

poppo3
質問者

お礼

これはすごい。ただ、表示したい場所は大元のデータを引っ張ってくるための関数が入っており、大元のデータの書式はいじれないので、今回は使えないかもしれないんですが、感動的に簡単です。必ずどこかで使わせて頂きます。どうもありがとうございました。 みなさん、超特急でご回答頂き、ありがとうございました。まさかこんなに早く解決するとは思っていませんでした。しかもいろいろな方法を教えて頂いて、今回に限らず役立ちそうです。教えて頂いた中からどれが最適か検討させて頂きます。とても助かりました。感謝します。

noname#4564
noname#4564
回答No.4

VBA使用の別解。単に8桁の数値を日付に変換するだけなら、下記で可能。(表示書式は環境に依存) DateSerial((Arg \ 10000), ((Arg Mod 10000) \ 100), (Arg Mod 100))

poppo3
質問者

お礼

前の方と同じお礼になってしまいますが、今のところVBAを使用するにはわたしはちょっと力不足です。でもいずれは、と思ってますので、そのとき参考にさせて頂きます。どうもありがとうございました。

noname#4564
noname#4564
回答No.3

VBAなら、 Format$(Arg, "@@@@\/@@\/@@") Mid$やLeft$、Right$を駆使するより簡潔でエレガントな解法です。

poppo3
質問者

お礼

VBAはちょっと自信がないのですが、いずれVBAを取り入れて再作成したいと思っている表なので、そのときに是非参考にさせていただきます。ありがとうございました。

  • Hageoyadi
  • ベストアンサー率40% (3145/7860)
回答No.1

関数ででしたらこちら。

参考URL:
http://www.okweb.ne.jp/kotaeru.php3?q=563077
poppo3
質問者

お礼

ご紹介頂いたページの方法でできること確認できました。早々にありがとうございました。

関連するQ&A

  • エクセル上の8桁の数字を一括して日付に変換する方法を教えて下さい。

    エクセル上の8桁の数字を一括して日付に変換する方法を教えて下さい。 ダウンロードしたエクセルデータのA列に日付として8桁の数字が入っているのですが、文字列として認識してるようで日付に変換出来ません。 例えば2010年1月1日の欄には20100101と入っていて、2001/01/01と変換したいのですがどうすればいいでしょうか。 セルの書式設定→表示形式→ユーザー定義で試してみましたが上手くいきませんでした。 データの量が何千行もあって膨大なので、1行ずつスラッシュを入れていくという作業は出来ません。 8桁の数字を一括して日付に変換出来る方法はあるのでしょうか。 教えて下さい。 宜しくお願い致します。

  • エクセルで日付形式への変換方法

    エクセルに日付形式でなく数字8桁で日付のつもりで入力されているセルがあります。 たとえば「2004年10月1日」なら「2004/10/01」ではなく「20041001」と8桁数字で入ってるのです。 セルの書式変更では、この8桁の数字は日付とみなされずエラーになってしまいます。 この8桁数字のはいってるセルを一挙に日付形式に変換するにはどうすればいいのでしょうか

  • エクセル2013 数字を日付に変換

    エクセル2013、OS7です。 エクセルの帳票からインポートして、私のエクセル2013のセルに20150812と数字が打ってあります。 これを2015/08/12と変換したいのですが。 セルの書式設定の「ユーザー定義」で変換できないでしょうか。 私、未熟で難しいことは分かりませんので、宜しくお願いします。 関数で変換できるのかな。

  • 【Excelマクロ】 文字列から日付型へ変換したい

    AccessデータをExcelへ貼り付ける際、Access側の書式設定がyyyy/mm/ddでしたらExcelでも日付型として認識してくれますが、yyyy/mm/dd(aaa)と曜日を表記したデータはセルの書式を日付型にしても文字列として貼り付けられてしまいます。 ExcelのDATEVALUE関数を使用すれば日付型へ変換できるのは存じていますが、列/行を挿入することができません。 日付型へ変換できるマクロはありませんか? 変換したいセル番地は都度変動しますので、変換したいセル(複数列/行)を選択した状態からマクロを実行したいです。

  • システムから落とした日付データの変換について…

    システムから落とした日付データの変換について… パソコン初心者です。 システムから落とした日付データを変換する方法について教えて下さい。 2010/9/27のような表示になっているのですが、 セルの書式設定からは和暦に変換できません。 セルをダブルクリックすると数字表示になって、和暦にも変換できるのですが 一括変換ができません。 一括変換する方法を教えていただけませんでしょうか?

  • EXCELの日付データを文字列に変換したい

    EXCELの和暦形式の日付データを文字列に変換する方法を教えてください。 たとえば、H17.9.2をそのまま文字列に変換したいのです。 最初から文字列データとして入力すれば問題ないのですが、日付データ(標準)として入力されたデータを書式→セル→文字列で変換するとシリアル値に変わってしまいます。(H17.9.2→38597) どうしたらよいのでしょうか。お願いします。

  • 【Excel】数字を日付表示に

    表題の通りなのですが、ある数字(8桁の列と6桁の列があります)の入っているセルを、日付表記に表示したいのです。 例えば、現在あるセルに”20061006”、とか”200310”となっているセルがあるのですが、これを ”20061006”→”H18/10/06” ”200310”→”H15/10” と表示させることは可能でしょうか? 「セルの書式設定」→「表示形式」→「日付」で出来るかと思いやってみたのですが、”##########”と表示されるのみで、希望する表示が出来ません。

  • エクセルに日付型データを貼り付けた時の表示形式が・・・

    Microsoft Access 2000でデータベース(Oracle)を参照し、 日付型のフィールドをコピーしてエクセルに貼り付けると 表示形式が「24-Aug-04」のようになってしまっているのですが、 この表示形式を「2004/08/24」のように変更するには、 データを貼り付けた後にセルを選択して書式の変更をするしか方法がないのでしょうか? 最初に貼り付けた時点で「2004/08/24」の形式にしたいのですが、 貼り付ける前にシート全体を選択して表示形式を変えてしまうと、 日付型以外の項目まで日付形式に変換されてしまいます・・・。 よろしくお願いします。

  • Excelで「20080707」を『2007/07/07』というスラッシュ付日付にするには?

    エクセルのセルに入力してある8桁の数字を スラッシュ付の日付書式に変換するには、 どうしたら良いのでしょうか? (例) 20080707 ⇒ 2008/07/07 よろしくお願いします。

  • 【Excel】文字列になってしまった日付を変換したい

    こんにちは。ご存知の方教えてください。 エクセル2000で、文字列になってしまった日付をセルの「書式設定」で「表示形式」→「日付」で表示されるようにしたいのですが、そのやり方をご存知の方、是非お教え願えますでしょうか。 変換前の文字列(※:文字の区切りにはスペースがあるのみです。) 例)Wed 31 Jul 2002 18:59 変換後)2002年7月31日 水 (2002/7/31でも可) どうぞよろしくお願いします。

専門家に質問してみよう