OKWAVEのAI「あい」が美容・健康の悩みに最適な回答をご提案!
-PR-
解決
済み

excelの日付の処理について教えてください。(初心者です)

  • 暇なときにでも
  • 質問No.111418
  • 閲覧数47
  • ありがとう数5
  • 気になる数0
  • 回答数8
  • コメント数0

お礼率 84% (21/25)

文字列で定義された日付(*)を’2001/8/1’(シリアル値?)と表示させるには
どういう関数でどういう計算をしたら効率よく変換できるでしょうか?

*:
文字列で’H130801’
1桁目(平成=H,昭和=S)+年+月+日
通報する
  • 回答数8
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

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

  • 回答No.8
レベル12

ベストアンサー率 51% (254/492)

こんにちは

 「昭和=1,平成=2」ということでしたら、

=(INDEX({"S","H"},LEFT(A1))&TEXT(MID(A1,2,6),"00!/00!/00"))*1

でいかがでしょうか?
お礼コメント
kappa84

お礼率 84% (21/25)

ありがとうございました。勉強になりました。
投稿日時 - 2001-08-02 06:36:35
-PR-
-PR-

その他の回答 (全7件)

  • 回答No.2
レベル10

ベストアンサー率 38% (54/141)

H130801がセルA1に入っているとして、 平成1桁年の日付(例として平成9年1月1日)が、 1)H090101の様に入っているのなら、 =DATEVALUE(LEFT(A1,3)&"."&MID(A1,4,2)&"."&RIGHT(A1,2)) 2)H90101の様に入っているのなら、 =IF(LEN(A1)=7 ...続きを読む
H130801がセルA1に入っているとして、
平成1桁年の日付(例として平成9年1月1日)が、

1)H090101の様に入っているのなら、
=DATEVALUE(LEFT(A1,3)&"."&MID(A1,4,2)&"."&RIGHT(A1,2))

2)H90101の様に入っているのなら、
=IF(LEN(A1)=7,DATEVALUE(LEFT(A1,3)&"."&MID(A1,4,2)&"."&RIGHT(A1,2)),DATEVALUE(LEFT(A1,2)&"."&MID(A1,3,2)&"."&RIGHT(A1,2)))

と入力して、「セルの書式設定」→「表示形式」を「日付」→「1997/3/4」を選択。

尚、2)の場合はH090101型のデータが混在しても大丈夫です。

  • 回答No.1
レベル9

ベストアンサー率 35% (42/120)

もっと簡単な方法もあるかもしれませんが H130801という文字列をH13.08.01という文字列に書き換えて、 それを日付のシリアル値に変換する式です。 平成1年などH01ではなくH1にも対応させるようにしたので長くなりました。 A1にH130801が入っているときの式です。 =DATEVALUE(CONCATENATE(LEFT(A1,IF(LEN(A1)=7,3,2)),". ...続きを読む
もっと簡単な方法もあるかもしれませんが
H130801という文字列をH13.08.01という文字列に書き換えて、
それを日付のシリアル値に変換する式です。
平成1年などH01ではなくH1にも対応させるようにしたので長くなりました。
A1にH130801が入っているときの式です。

=DATEVALUE(CONCATENATE(LEFT(A1,IF(LEN(A1)=7,3,2)),".",MID(A1,IF(LEN(A1)=7,4,3),2),".",RIGHT(A1,2)))

これで日付のシリアル値が得られますので、セルの書式の表示形式の日付から
表示したい形式2001/8/1を選択してください。
お礼コメント
kappa84

お礼率 84% (21/25)

ありがとうございました。勉強になりました。
投稿日時 - 2001-08-02 06:39:03
  • 回答No.3

CONCATENATE(MID(セル番号,1,3),"/",MID(セル番号,4,2),"/",MID(セル番号,6,2)) でどうでしょう。 CONCATENATE(文字列1,文字列2,…) : 文字列の結合 MID(文字列, 開始位置, 文字数) : 文字列の任意の位置から指定された数の文字を返す 例:D50=S511124   B50=CON ...続きを読む
CONCATENATE(MID(セル番号,1,3),"/",MID(セル番号,4,2),"/",MID(セル番号,6,2))

でどうでしょう。
CONCATENATE(文字列1,文字列2,…) : 文字列の結合
MID(文字列, 開始位置, 文字数) : 文字列の任意の位置から指定された数の文字を返す

例:D50=S511124
  B50=CONCATENATE(MID(D50,1,3),"/",MID(D50,4,2),"/",MID(D50,6,2))
  B50の表示:S51/11/24

要求している答えじゃなかったらごめんなさい。
お礼コメント
kappa84

お礼率 84% (21/25)

ありがとうございました。勉強になりました。
投稿日時 - 2001-08-02 06:38:23
  • 回答No.4
レベル10

ベストアンサー率 38% (54/141)

ふたたびHitomiKuroseです。 majeさんのを改造してちょっとだけ短くしました。 =DATEVALUE(CONCATENATE(LEFT(A1,LEN(A1)-4),".",MID(A1,LEN(A1)-3,2),".",RIGHT(A1,2)))
ふたたびHitomiKuroseです。
majeさんのを改造してちょっとだけ短くしました。

=DATEVALUE(CONCATENATE(LEFT(A1,LEN(A1)-4),".",MID(A1,LEN(A1)-3,2),".",RIGHT(A1,2)))
  • 回答No.6
レベル12

ベストアンサー率 51% (254/492)

こんにちは =(LEFT(A1)&TEXT(MID(A1,2,6),"00!/00!/00"))*1 でシリアル値に変換します。年の部分が一桁、二桁両方に対応しています。  この結果を 2001/8/1 のような表示形式にするには、以下の手順です。 1.セル範囲を選択 2.Ctrl+1 (メニュー[書式]-[セル]) 3.[表示形式]タブの[分類]で ...続きを読む
こんにちは

=(LEFT(A1)&TEXT(MID(A1,2,6),"00!/00!/00"))*1

でシリアル値に変換します。年の部分が一桁、二桁両方に対応しています。

 この結果を 2001/8/1 のような表示形式にするには、以下の手順です。

1.セル範囲を選択
2.Ctrl+1 (メニュー[書式]-[セル])
3.[表示形式]タブの[分類]で 日付 を選択
4.[種類]で 1997/3/4 を選択
5.Enter
補足コメント
kappa84

お礼率 84% (21/25)

早速回答ありがとうございました。
あっという間に解決できてびっくりしています。
参考urlのページもとても参考になりました。お気に入りに追加しました。

追加で(調子に乗って甘えてすいません!)、、
別のファイルでは、「昭和=1,平成=2」としてあって
うまくいきません。

H130801 ー> 1130801

この場合の対応を教えてください。
投稿日時 - 2001-07-31 07:10:18
  • 回答No.5
レベル12

ベストアンサー率 52% (322/612)

こんにちは 多少短く(考え方は皆さんのと同じです) 年も2桁固定(例 H090801)なら  =--(LEFT(A1,3)&"/"&MID(A1,4,2)&"/"&RIGHT(A1,2)) 年が1桁~2桁非固定(例 H90801)なら  =--(LEFT(A1,LEN(A1)-4)&"/" ...続きを読む
こんにちは

多少短く(考え方は皆さんのと同じです)

年も2桁固定(例 H090801)なら
 =--(LEFT(A1,3)&"/"&MID(A1,4,2)&"/"&RIGHT(A1,2))
年が1桁~2桁非固定(例 H90801)なら
 =--(LEFT(A1,LEN(A1)-4)&"/"&MID(A1,LEN(A1)-3,2)&"/"&RIGHT(A1,2))

ご存知だとは思いますが
結果はシリアル値なので、書式設定 表示形式 で「日付」(ご質問の例だと1997/3/4形式)
を設定してください!
お礼コメント
kappa84

お礼率 84% (21/25)

ありがとうございました。勉強になりました。
投稿日時 - 2001-08-02 06:37:48
  • 回答No.7
レベル10

ベストアンサー率 38% (54/141)

平成と昭和だけでいいですよね?今回はjanmaさんのを改造。 =(IF(LEFT(A1)="1","H","S")&TEXT(MID(A1,2,6),"00!/00!/00"))*1 ...続きを読む
平成と昭和だけでいいですよね?今回はjanmaさんのを改造。

=(IF(LEFT(A1)="1","H","S")&TEXT(MID(A1,2,6),"00!/00!/00"))*1
お礼コメント
kappa84

お礼率 84% (21/25)

ありがとうございました。勉強になりました。
投稿日時 - 2001-08-02 06:37:02
このQ&Aのテーマ
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
このやり方知ってる!同じこと困ったことある。経験を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ