- ベストアンサー
EXCEL表示変更について
20120111 20131203 といったEXCELにある文字列について、 2012/01/11 2013/12/03 といった、yyyy/mm/ddに 直すことは可能でしょうか。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
月と日は2ケタで計8ケタの数字であるとします。 A列(A1、A2・・・セル)に文字列があるとして、 B1セルに以下の数式を入れてA列の行数分オートフィル。 =DATE(LEFT(A1,4),MID(A1,5,2),RIGHT(A1,2)) B列をコピーしてA列へ値として貼付け A列の表示形式を日付(yyyy/mm/dd)に変更。
その他の回答 (2)
- 5W2H
- ベストアンサー率67% (429/632)
●そのセルを…という意味なら 日付を表す整数が入力されている列全体を選択して、 Excel2003までなら、メニューの[データ]→[区切り位置]で[区切り位置指定ウィザード]を起動します。 そのまま[次へ]→[次へ]で3/3ページめが開いたら[列のデータ形式]で[日付]を選択してOKボタンをクリックすればできます。 Excel2007以降なら[データ]タブ、[データツール]グループの[区切り位置]から操作します。 ●隣のセルに…という意味なら 年数:数値を10000で割った商の値 月数:数値を100で割った商の整数部分を100で割った余りの値 日数:数値を100で割った余りの値 という考え方の数式 =DATE(INT(A1/10000),MOD(INT(A1/100),100),MOD(A1,100)) 「20120111」を文字列と見なして左右から何番目を日付のどれに相当するかとあてはめる考え方 年数:左から4文字 月数:左から5文字目から2文字 日数:右から2文字 =DATE(LEFT(A1,4),MID(A1,5,2),RIGHT(A1,2)) 他にも下記はセルの書式設定をyyyy/mm/ddにする必要が出てきますが、=DATEVALUE(LEFT(A1,4)&"/"&MID(A1,5,2)&"/"&RIGHT(A1,2)) =TEXT(TEXT(A1,"0-00-00"),"ge/m/d") =DATEVALUE(TEXT(A1,"0000!/00!/00")) =DATEVALUE(TEXT(A1,"0000""/""00""/""00")) =DATEVALUE(TEXT(A1,"0000-00-00")) =DATEVALUE(LEFT(A1,4) & "/" & MID(A1,5,2) & "/" & RIGHT(A1,2)) =TEXT(A1,"0000-00-00")+0 =TEXT(A1,"0!/00!/00")*1 等でできます。
- tom04
- ベストアンサー率49% (2537/5117)
こんばんは! データを範囲指定 → データ → 区切り位置 → 何もせずに「次へ」を2回 → 「列のデータ形式」で「日付」を選択 →YMD となっているを確認しOK これでシリアル値になりますが、 20120111 のような場合は 2012/1/11 となりますので、 セルの表示形式のユーザー定義から yyyy/mm/dd としてください。m(_ _)m