- ベストアンサー
Excelの日付の処理を教えてください。
- みんなの回答 (7)
- 専門家の回答
質問者が選んだベストアンサー
D2セルに入力する関数は、次の様なものとすれば良いと思います。 =IF(ISNUMBER(C2),TEXT(C2,"e")+0,"")
その他の回答 (6)
- tom04
- ベストアンサー率49% (2537/5117)
No.5です! たびたびごめんなさい。 投稿した後で気づいたのですが、 前回の方法では各元号の最終年の場合は「0」となってしまいますね。 それに対処する数式を!と思ったのですが、IFでそれぞれ分岐しなくてはならないので とりあえず、アナログな方法で悪いのですが 仮に「0」が表示された場合は手作業でC列の数値を入れてみてください。 時間があれば少し考えてみようと思います。 検証せずに投稿してごめんなさいね。m(_ _)m
お礼
>投稿した後で気づいたのですが、 前回の方法では各元号の最終年の場合は「0」となってしまいますね。 これは、変換表を大きく作れば、C列・D列共に数値で表示できて、「0」表示の問題も解決し、PCの負担も軽いだろう閃いたのです。 ご回答のVLOOKUP関数を使う方法であれば、と江戸時代の元号も簡単に変換できるわけですね。 「変換表」を作るのは1度だけですから苦にはなりません。 本来なら(実務に使ったことは無いのですが)Accessで処理をする作業でしょうか? Accessは試用しただけで分かりません。 実は、B列は B2 の値をスピンボタンで適宜変化させて、B3 セル以下は =B2+1 をコピーして数値入力しました。 セルの書式設定で5年ごとに青色に表示しています。 実用では、いくつかの単位(年号も)換算表を作り、スピンボタンで中央の列の値を変えて上下の列に前後の値を表示させています。 必要な部分を強調・判断できるようにもしています。 VLOOKUP関数は助かります。 ありがとうございます。
補足
できれば、平成元年と昭和64年なども区別したいのです。<m(__)m>
- tom04
- ベストアンサー率49% (2537/5117)
- oct1290
- ベストアンサー率35% (75/213)
シリアル値が表示されているので最初の書式設定でユーザー定義から(e)をいれて表示できると思いますが 手順を記載しなかったのでご面倒かけます。。
お礼
ご回答ありがとうございます。
補足
>シリアル値が表示されているので最初の書式設定でユーザー定義から(e) シリアル値=思い出しました。 (e) が理解できません。試行してみます。
- oct1290
- ベストアンサー率35% (75/213)
C1=--MID(C1,MIN(FIND({0,1,2,3,4,5,6,7,8,9},C1&1234567890)),LEN(C1)*10-SUM(LEN(SUBSTITUTE(C1,{0,1,2,3,4,5,6,7,8,9},)))) でも可能
お礼
補足にお礼でした。
補足
>C1=--MID(C1,MIN(FIND({0,1,2,3,4,5,6,7,8,9},C1&1234567890)),LEN(C1)*10-SUM(LEN(SUBSTITUTE(C1,{0,1,2,3,4,5,6,7,8,9},)))) 再再度のご回答ありがとうございます。 C1は今回使用していないので、全てC1→C2として 使用させていただきました。 ANo.2と同じく、昭和60年ですと 31138 を返します。 D列を 60 にしたいのですが。 <m(__)m>
- oct1290
- ベストアンサー率35% (75/213)
補足がきたので 書式以外でMID関数で可能かな? =MID(文字列,開始位置,文字数) 左から3文字目で2文字 =MID(C2,3,2)で同でしょうただ昭和や平成、大正、明治なら可能ですが3文字になると??
お礼
ありがとうございました。
補足
>=MID(C2,3,2)で同でしょうただ昭和や平成、大正、明治なら可能… 再度のご回答ありがとうございます。 C列が、文字列の場合は、C列の、3文字目から 2文字選択で所期の目的のクリアです。 今回は、C列をDATE関数の日付数値で返して、 それを書式設定で元号に変えています。 したがって、MID関数の値は、 その日付数値の3番目と4番目を返してくるので 元号の数字とは違ってしまうようです。 日付数値は、私の造語で 通用する術語では無いと思いますが。<m(__)m> Excelは2007を使用しています。
- oct1290
- ベストアンサー率35% (75/213)
書式設定で(e)で年号だけ表示するのは同でしょう C列にB列をコピーし書式設定でユーザー設定から設定できます
お礼
ありがとうございました。
補足
早速ありがとうございます。 C列に、書式設定で和暦〔元号〕を表示できました。 D列に、元号の数字部分を数値で表示したいのです。 <m(__)m> 説明の都合で、順に並べました。
お礼
ありがとうございます。 所期の目的をクリアできました。