- ベストアンサー
Excel セルの書式設定
セルに H1709 と入力したら自動的に H17年09月 と表示させたいのですが・・・ 1709 → 17年09月 まではセルの書式設定のユーザ定義に##年##月と設定してうまくできたのですが、 固定でない文字列を一緒に表示させるのは無理なのでしょうか? よろしくお願いします。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
Hは固定ではないのですね。勘違いしました。 入力セルがA1とし、A2セルにあらかじめ「年」、 A3セルにあらかじめ「月」といれておきます。 そして表示させたいセルに =CONCATENATE(MIDB(A1,1,3),A2,MIDB(A1,4,5),A3) と入力します。 すると、MIDB(A1,1,3)でA1セルの1~3文字目の「H17」が抽出され、 A2の「年」がそれに続き、 MIDB(A1,4,5)で4~5文字目の「09」が抽出されて続き、 A3の「月」がそれに続き、文字列として表示されると思います。 今度はどうでしょう。
その他の回答 (4)
- Wendy02
- ベストアンサー率57% (3570/6232)
こんばんは。 ユーザー定義では、数字は書式を変えられますが、文字列を変化させることは出来ませんね。VBAというのもあるけれども、それは、今置いておいて、 =LEFT(A1,1)&TEXT(MID(A1,2,5),"##年##月") 関数では、こんな風にしたら出来ますね。
お礼
こんな方法もあるのですね。 ありがとうございました!!
- vista77
- ベストアンサー率57% (8/14)
おっとまちがい修正します。 書式設定はユーザー定義で"H"##"年"##"月"でした。
- vista77
- ベストアンサー率57% (8/14)
MIDBという関数を使ってまず冒頭のHをカットします。 =MIDB(入力セル番号,2,4)で2桁目から4桁目が文字列として抽出されます。 次にこれに1を掛けて文字列から数値に変換します。 つまり=MIDB(入力セル番号,2,4)*1とするのです。 表示はユーザ定義で##年##月でいいですね。
- loto25
- ベストアンサー率20% (3/15)
"H"##"月"##”年# の書式設定で出来ますよ
補足
回答ありがとうございます。 この場合、"H"は固定になってしまうのではないですか? "H"はセルに入力した値で、"H"の部分は固定ではなく入力した値をそのまま表示させたいのですが・・・ 説明が不十分で申し訳ありません。
お礼
ありがとうございます!! 助かりました!