エクセルの日付データについて。間違って文字列で『 2004.07.01 』とか『 2004.7.2 』(文字列として)と入力してあります。日付データへの変換はどうようにすればよいでしょうか?『.』の区切りも元にできないでしょうか?

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2006/01/26 13:54:15
  • 終了:--

回答(8件)

id:tetsuya9 No.1

tetsuya9回答回数33ベストアンサー獲得回数02006/01/26 13:57:06

ポイント5pt

http://www2.odn.ne.jp/excel/

Excel(エクセル)技道場

日付のセルを選択して右クリックで、「セルの書式設定」「表示形式」「日付」で書式を選んだりカスタマイズできます。

id:rhai

残念ながら上記の状況ではありません。今回の日付形式がエクセルにおける日付フォーマットに含まれない形式であったため(0000/00/00;日付として認識、0000.00.00では日付として認識されず文字列となる)カスタマイズはできません。一度『.』を区切りとして3つに分けて取り出せれば、一つにまとめる関数(DATE(年.月.日)で日付変換できるとは思っているのですが‥。

2006/01/26 14:16:35
id:cooper0524 No.2

cooper0524回答回数296ベストアンサー獲得回数42006/01/26 14:02:15

ポイント100pt

それらの値が入っているセルの「.」を全て「/」に置換して、その後に右クリックで「セルの書式設定」を選び、分類を「ユーザー定義」にして「種類」を「yyyy/mm/dd」とすれば変換できます。

id:rhai

大量に日付データがあり、1つ1つの入力しなおしは難しい状況にあります。

2006/01/26 14:19:43
id:ygiske No.3

ごったに回答回数37ベストアンサー獲得回数02006/01/26 14:09:12

ポイント5pt

スペースが入っているので、セルを選んでコントロールHで置換すればできます。上の欄にスペースをいれて、下の欄に何も入れなければ数値になります。

id:rhai

すみません、わかりやすいようにスペースいれて表示しただけで実際はスペースはありません。

2006/01/26 14:31:25
id:rikuzai No.4

りくっち回答回数1366ベストアンサー獲得回数1412006/01/26 14:35:38

ポイント15pt

http://www2.moug.net/bbs/exopr/

Excel���ʋ@�\ Q&A�f����

私がよくやるやり方ですが、

日付の入ったセルを列で選択

データ→区切り位置とクリックし「区切り位置指定ウイザード」を起動

次へ→次へとクリックし、ウイザードの3/3の画面の「列のデータ形式」を「日付」にチェックして完了ボタンを押す。


これで日付データに一括変換されると思いますので、セル書式でご希望の書式に整えられたら良いかと。

id:rhai

了解致しました。大変ありがとうございます。

2006/01/26 15:34:53
id:ygiske No.5

ごったに回答回数37ベストアンサー獲得回数02006/01/26 14:48:05

ポイント10pt

それでは、A1に文字列の日付を入れて、B1に「=A1」としたらどうでしょうか。

id:rhai

良い方法なのですが『西暦で.の区切り』が日付では認識しません。

2006/01/26 15:35:53
id:bonlife No.6

回答回数421ベストアンサー獲得回数752006/01/26 14:50:29

ポイント15pt

http://www.hatena.ne.jp/1138251255#

人力検索はてな - エクセルの日付データについて。間違って文字列で『 2004.07.01 』とか『 2004.7.2 』(文字列として)と入力してあります。日付データへの変換はどうようにすればよい..

対象のセルはバラバラな場所に配置されているのでしょうか。2番目の回答のやり方を対象セル全てを選択した状態で行えば良いと思うのですがいかがでしょうか。


数箇所に分かれている場合は、簡単なマクロでやってみてはいかがでしょうか。(2番目の方のやり方をマクロにしただけです。)


Alt+F11でVisual Basic Editorを起動

([ツール(T)]-[マクロ(M)]-[Visual Basic Editor(V)]でも起動できます。)


[挿入(I)]-[標準モジュール(M)]でModuleを追加


追加されたモジュールに以下の内容をコピーして保存


Sub CharToDate()

’ CharToDate

’ 選択範囲の”.”(ドット)を”/”(スラッシュ)に置き換え、書式も”yyyy/mm/dd”に変更


Selection.Replace What:=”.”, Replacement:=”/”, LookAt:=xlPart, _

SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _

ReplaceFormat:=False

Selection.NumberFormatLocal = ”yyyy/mm/dd”

End Sub


Visual Basic Editorを閉じる


対象となるセルを選択した状態でAlt+F8でマクロウィンドウを開き、CharToDateを実行すれば良いと思います。

複数個所に分かれている場合、セル選択->Alt+F8->CharToDate実行すれば良いはずです。


あまりにもセルが飛び飛びになっている場合は、対象セルを検索するなど、処理を工夫する必要がありそうです。


不要になったマクロはVisual Basic EditorにてModuleを右クリックし、Moduleの解放を行えばなくなります。(ダイアログでエクスポートするか聞かれますが「いいえ」で結構です。)

id:rhai

了解致しました。大変ありがとうございます。

2006/01/26 15:36:48
id:asdf789 No.7

asdf789回答回数7ベストアンサー獲得回数02006/01/26 15:02:04

ポイント45pt

1.変換するセルを範囲指定(1つのセルでも、シート全体でも可能)

2.Ctrl+H (メニュー[編集]-[置換])

3.[検索する文字列] に . と入力

4.[置換後の文字列] に / と入力

5.[完全に同一なセルだけを検索する] にチェックが入っていないことを確認して

[すべて置換]ボタンをクリック

あとは、2番のご回答のとおり「セルの書式設定」をすれば変換できます。

id:rhai

実に簡単でまさにこの方法が一番ですね。

2006/01/26 15:37:37
id:sakuya09 No.8

sakuya09回答回数254ベストアンサー獲得回数02006/01/26 15:16:56

ポイント45pt

ひとつのセルに「2004.07.01」のような日付データだけが入っているのであれば、


1.該当セルを選択

2.メニューの「編集」-「検索」を選んでさらに「置換」タブを選択。

3.検索する文字列に「.」置換後の文字列に「/」を入力して「置換」または「すべてを置換」ボタンを押すと日付型に変換されます。


列毎や行毎に入力する項目が決まっている場合は

その列や行を選択した状態で上に書いた作業をすると選択した箇所以外は「.」が置換されません。


このような方法はどうですか?

id:rhai

この方法がベスト回答です。大変ありがとうございました。

2006/01/26 15:38:21

コメントはまだありません

この質問への反応(ブックマークコメント)

トラックバック

  • 日付の区切り文字を間違えた場合の解決方法 日付の区切り文字を間違えた場合の解決方法 2006-03-13 16:13:20
    question:1138251255 まず、日付のあるせるの横の空いてるセルに置換関数を入れます 例えば、A列が日付ならば =SUBSTITUTE(A1,".","/") を入力し、後は、それをドラッグして、下の行
「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません