データの分析、グラフ作成、および通信のためのツールを備えた Microsoft 表計算ソフトウェアのファミリ。
=DATEVALUE(A1) じゃだめですか?
このブラウザーはサポートされなくなりました。
Microsoft Edge にアップグレードすると、最新の機能、セキュリティ更新プログラム、およびテクニカル サポートを利用できます。
こんにちは
Windows7, Excel2010を使用しています。
あるtoolからxlsでダウンロードしたファイルで、うまく日付表示できず、いくつか試したのですがよい方法を教授いただけますか?
したいこと:"02-FEB-2014"と表示されるものを2014/02/02(yyyy/mm/dd)タイプに変換したい
一応試したファンクションは、他データ(文字列/数値型)から試すと作用します。
大元のファイルダウンロードの設定変更はできないみたいです。
よろしくお願いいたします。
データの分析、グラフ作成、および通信のためのツールを備えた Microsoft 表計算ソフトウェアのファミリ。
ロックされた質問。 この質問は、Microsoft サポート コミュニティから移行されました。 役に立つかどうかに投票することはできますが、コメントの追加、質問への返信やフォローはできません。
=DATEVALUE(A1) じゃだめですか?
空のセルをコピーし、その文字列日付(範囲で可)に形式を選択して貼り付け⇒加算
これで、41672と日付シリアルに変わります。
そのあと、そのセルの表示形式をお好みの日付形式にしてください。
もっと簡単な方法があるかもしれませんが、これでも間に合うはずです。
参考まで。
このようなご質問は、ほとんどのケースが文字コード入りのデータの場合ですので、あえて細かい点は確認しませんでしたが、「一応試したファンクションは、他データ(文字列/数値型)から試すと作用します。」はどのようなことを意味しているのでしょうか?
もう一つよく起こる現象として、たとえば、アクセスなどからエクセルに吐き出した日付データは、文字列になることがあるためご質問のような状況が発生しますが、この場合はDATEVALUE関数などでシリアル値を取得できますので、今回は違う原因と判断しました。
基本的に文字数が同じなら計算できるはずですが、私の提示した)、「=LEFT(A1,11)*1」は何を返すのでしょうか?
また、その列を選択して「データ」「区切り位置」でそのまま完了するとどのような結果になるか試してみてください。
y sakudaさん、マックちゃんさん
早速のアドバイスありがとうございます。結果うまく変換できなかったのですが、考え方として勉強になりました!
=LEN(A1) → "11" になったので他の文字は入っていなかったようだったので、
加算して貼り付け→日付変更できませんでした
考え方が違うのかもしれませんが、単純に↓もやってみたら、MIDの部分が「#value!」でした。。
=DATE(RIGHT(4),MID(C11,4,3),LEFT(C11,2))
>したいこと:"02-FEB-2014"と表示されるものを2014/02/02(yyyy/mm/dd)タイプに変換したい
本当に例示の文字列なら、そのままExcelにコピー貼り付けしただけで日付シリアル値になります。
それが日付に変更できないのは、Webページなどから表形式のデータをコピーしたときに、「02-FEB-2014」以外の文字コードが含まれているためです。
たとえば、以下のような関数でその日付が入力されているセルのデータの文字数をカウントしてみてください。
=LEN(A1)
上記の数式で11よりも大きい値が入っていた場合は、何らかの文字コードが文頭または文末に含まれています。
その場合は(たとえば文末に何かわからない文字コードが含まれている場合)、「=LEFT(A1,11)*1」のような式でシリアル値に変換することができます。