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

セルに入っている日付の月をアルファベットとして抜き出したいのですが。
例えば2023/2/16の年月を「23B」として抜き出したいのですが。
但し、IとLは使用せずにという条件まで付くのですが。

質問者からの補足コメント

  • HAPPY

    2つの質問に当方に分かり易いご回答をいただきありがとうございました。

    他の書類で確認してみたらこの顧客様は年数の末尾の0は「O」を使用していました。
    ZをOに変えて採用させて頂きます。

    No.6の回答に寄せられた補足コメントです。 補足日時:2023/02/20 09:22

A 回答 (7件)

No4です。



>例えば2023/2/16ならば年の末尾3がCで2月がBと変換されて
>「CB・・」とするケースが出てきました。
年に関しては、末尾一桁だけ使うという解釈をで良いのでしょうか。
その場合に、2030年のように末尾が0となる年は、Kにするのかそれとも別の文字なのか・・

下記では、「0」の年はひとまず「Z」に変換するようにしてあります。
(「Z」の部分は、適宜修正してください)

=MID("ZABCDEFGHJ",MOD(YEAR(A1),10)+1,1)&MID("ABCDEFGHJKMN",MONTH(A1),1)
この回答への補足あり
    • good
    • 0
この回答へのお礼

早々にありがとうございます。

成る程MODという関数も有りました!
これで行きます。

MIDやRIGHT、LEFT、MODも単独なら使えるのですが、組み合わせると特に日付は滅多に使用しないので、NETを参考にいつも悪戦苦闘の試行錯誤で何とかかんとか。。。。
=CHARも使ったことはあるのですが記憶ははるか遠く~状態で。

今回はHELPであっさり解決でき助かりました。
月曜日以降に実践します。
2030年に関しては顧客様のルールが分からないのでその時になったら・・・

何度もありがとうございました。

お礼日時:2023/02/16 17:00

スカートと式は短いのがお好きなら下記は如何かと。

(*^_^*)
=TEXT(A1,"yy")&MID("ABCDEFGHJKMN",MONTH(A1),1)
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
当方も何でも短い方が好きなので参考になります。

>TEXT(A1,"yy")
はたまに使っています。

お礼日時:2023/02/20 09:08

すでに複数の回答がついていますが、以下の方法もあるという意味で投稿します。



添付画像をご覧ください。

B1セルには

=TEXT(A1,"yy")&MID("ABCDEFGHJKMN",MONTH(A1),1)

という数式を記述し、下方向へコピーしています。

また、E1セルには

=TEXT(D1,"yy")&CHAR(64+MONTH(D1)+(MONTH(D1)>8)+(MONTH(D1)>10))

という数式を記述し、下方向へコピーしています。

どちらも同じ結果を返します。
「エクセルで月をアルファベットに変換したい」の回答画像5
    • good
    • 0
この回答へのお礼

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

式によって月を選択する
>8と>10は参考になりました。
#No1さんのご回答でもありましたので月変換の定石なのでしょうか。

参考になりました。

お礼日時:2023/02/20 09:11

こんにちは



すでに回答は出ていますけれど・・

対象となる日付がA1セルにあるとして
 =RIGHT(YEAR(A1),2)&MID("ABCDEFGHJKMN",MONTH(A1),1)
ではいかがでしょうか?
    • good
    • 0
この回答へのお礼

色々ご回答いただいている中で、この方法が小生には一番分かり易く使いまわしがききそうなのいくつかのシートで月買い始めたのですが、別のシートで年の末尾と月をアルファベットにしている表が出て気ました。
例えば2023/2/16ならば年の末尾3がCで2月がBと変換されて「CB・・」とするケースが出てきました。

ご回答を参考に月を年に変えて、2つをつなげてみたのですがうまく行きません。
追加の要求になってしまって申し訳ありませんが今一度HELPお願いします。

お礼日時:2023/02/16 13:59

Excelのバージョンが古いとIFS関数が使えないことがあります。


以下の式でも実現できますので、お試しください。

=RIGHT(YEAR(B4),2) & LEFT(ADDRESS(1,MONTH(B4)+INT(MONTH(B4)/9)+INT(MONTH(B4)/11),4),1)

式中に日付のセル(上の式ではB4)を入力する箇所が4つありますので全て変更してください。
これが一番スマートな気がします。
    • good
    • 0
この回答へのお礼

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

確かにこれが一番汎用性があってスマートな気がしますが
ADDRESS関数もINT関数も使ったあことが無いので「馴染み」がないので当方には覚えにくく感じます。

お礼日時:2023/02/20 09:17

単純な方法ですが。


 =RIGHT(YEAR(A1),2)&CHOOSE(MONTH(A1),
"A","B","C","D","E","F","G","H","J","K","M","N")
A列にある日付に対して、年を二桁にして、CHOOSE関数を使い
月を指定したアルファベットで出しています。
「エクセルで月をアルファベットに変換したい」の回答画像2
    • good
    • 0
この回答へのお礼

ご回答ありがとございました。

CHOOSE関数は使たことが無くこれで好きな文字列を選択できますね。
参考になりました。

お礼日時:2023/02/20 09:13

式を作ってみました。

2通りありますのでお好みの方をお試しください。

■ 方法1:IFS関数とADDRESS関数を使う方法

=RIGHT(YEAR(D4),2) &
IFS(
MONTH(D4)<9,LEFT(ADDRESS(1,MONTH(D4),4),1),
MONTH(D4)<11,LEFT(ADDRESS(1,MONTH(D4)+1,4),1),
MONTH(D4)<=12,LEFT(ADDRESS(1,MONTH(D4)+2,4),1))

上記式のみで実現します。
日付を示すセル(D4)を入力する箇所が7つありますので書き換えてください。

■ 方法2:VLOOKUP関数と変換テーブルを使う方法

=RIGHT(YEAR(L4),2) &
VLOOKUP(MONTH(L4),$R$4:$S$15,2,FALSE)

変換テーブルをどこかに作成し(ここでは$R$4:$S$15)、vlookupで月の数字を検索する方法です。式は簡単に書けますが変換テーブルを別に用意する必要があります。日付を示すセル(L4)を入力する箇所が2つあります。
「エクセルで月をアルファベットに変換したい」の回答画像1
    • good
    • 0
この回答へのお礼

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

方法2は当方にでもできそうですが、思いつかなかったです。
別表が必要なのでやはり方法1を使いたいと思います。

条件付き書式で別のセルを参照するので少し細工が必要ですがこの式は正しく動作(表記)することは確認しました。

式が分かり易く改行して書かれているので理解しやすく助かります。

お礼日時:2023/02/16 10:35

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