アプリ版:「スタンプのみでお礼する」機能のリリースについて

過去の質問履歴を検索したのですが、上手く行かないので教えて下さい・・・。

エクセルの表で「5500401」というような日付があるとします。
先頭の5は「昭和」というコードで50年4月1日を表現しています。

このようなデータを西暦で「19750401」と表示させたいのですが、どのようにすれば良いのか分かりません・・・。

マニュアルなどを見て関数を作っても上手く行きません。
分かる方がいらっしゃったらよろしくお願いします!

A 回答 (6件)

セル「A1」にデータが入っているとします。


(1)=LEFT(A1,1) で、 先頭の「5」が抽出できます。
(2)=MID(A1,2,2) で、先頭から2文字目の「50」が抽出できます。
(3)=MID(A1,4,4) で、先頭から4文字目の「0401」が抽出できます。

(1)のコードに対して、(2)の「50」を計算(例えば+1925)した結果と、(3)の結果を"&"で連結してあげれば、よろしいのでは?
    • good
    • 0
この回答へのお礼

早速の回答、ありがとうございました。

教えていただいた通り実行したら出来ました!
意外と簡単に出来ちゃったので感動でした☆

また分からないことがあったらよろしくお願いします!

お礼日時:2006/10/05 12:41

left関数で7桁目を出し、if関数でもし7桁目が5なら1925+○と理論を作る。


その○の部分はmid関数で5桁目、6桁目を出し、出た数字のセルを当てはめます。
同じようにmid関数やright関数を使って3,4桁目の月を出し、1,2桁目の日を出して最後はand関数で全て繋げる。原始的ですがこれでどうでしょう?
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

意外と簡単だったんですね・・・。
和暦(昭和)を西暦にするには1925をプラスすれば良いなんて、頭にありませんでした(汗)

エクセルの関数を活用し始めてまだ1週間くらいなので、これからどんどん勉強して仕事に活かして行こうと思います!

お礼日時:2006/10/05 12:46

安直ですが、以下の方法は如何でしょうか。


=IF(LEFT(A2,1)="5",MID(A2,2,2)+1925&MID(A2,4,4),その他コード処理)
    • good
    • 1
この回答へのお礼

ありがとうございます。

初歩的(?)なLEFTやRIGHTで出来るなんて思ってもみませんでした・・・。
難しく考えすぎてて出来なかったみたいです(汗)

お礼日時:2006/10/05 12:50

No.2です・・and関数ではなかったですね。

No.1さんの仰るように"&"です。
    • good
    • 0

1=元治,2=慶応,3=明治,4=大正,5=昭和,6=平成でいいのでしょうか?


A2=5500401 として
=CHOOSE(LEFT(A2)*1,1863,1864,1867,1911,1925,1988)*10000+RIGHT(A2,6)
    • good
    • 0
この回答へのお礼

ありがとうございます!

今のところは昭和だけで対応できるデータだったのですが、ゆくゆくは平成なども必要になってきますので助かりました!

お礼日時:2006/10/05 12:53

=MOD(A1, 1000000) + 19250000



で、昭和だけですと換算可能かと思います。

=XferAD(A1)

と、汎用化するのであれば、

Public Function XferAD(ByVal Hiduke As String) As String
  Dim X As Long
  
  X = Val(Hiduke)
  Select Case X \ 1000000
    Case 3
      X = X Mod 1000000 + 18670000
    Case 4
      X = X Mod 1000000 + 19110000
    Case 5
      X = X Mod 1000000 + 19250000
    Case 6
      X = X Mod 1000000 + 19880000
    Case Else
  End Select
  XferAD = X
End Function
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

・・・色んなやり方があるんですね。
何か本格的なやり方みたいな気がします。

私もみなさんのようにエクセルを使いこなせるように頑張ります!

お礼日時:2006/10/05 12:56

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!