[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『和暦文字列をシリアル値に』(しぇい)
現在、和暦の文字列をシリアル値にする研究(?)をしています(何かと出てくる ことがあり…)。 文字列は「平12/3/10」の表記です。 「平」を「平成」と置換操作してデータ区切り位置で日付…という手もありますが、 できればスマートに関数でやりたいと思っています。 現在は「=--SUBSTITUTE(A1,"平","H")」で対応しています。 昭和は"昭"と"S"に替えて同じ式を使っています。 そして、これら2つを合わせれば望みどおりなのですが(明治・大正はないので)、 合体するとどうもうまくいきません。考えた式は、 =IF(FIND("平",A6)=1,--SUBSTITUTE(A6,"平","H"),--SUBSTITUTE(A6,"昭","S")) なのですが、第一条件しか正しく返りません(この場合は平成はうまくいく)。 是非みなさまのアドバイスをいただきたく思います。
また、もしも「平」や「昭」の部分を置換するなりして年号(ge)と読んでくれる 方法があれば、そちらも知りたいです(こちらはもしもというレベルです)。 ただ、できればいいということではなく理解したいので、ものすご〜く長い式は 遠慮いたします…。
=--SUBSTITUTE(SUBSTITUTE(A6,"平","H"),"昭","S")でどうでしょうか? (ケン)
先越されて悔しいので、別解。 元の式を手直しするなら、 =--IF(ISERROR(FIND("平",A6)),SUBSTITUTE(A6,"昭","S"),SUBSTITUTE(A6,"平","H")) IF関数の部分でTRUE、FALSEになるようにします。 (みやほりん)
ケンさん、ありがとうございます! ボロボロボロ…(目からうろこが落ちる音)。 そうですよね〜。なるほどです。はぁ〜。ただただ感嘆…。 みやほりんさんもありがとうございます! おかげさまで自分の間違いに気がつきました。 そうですね。私の式では真偽になりませんね。 ご指摘ありがとうございます。 お2人ともありがとうございました。 (しぇい)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.