• ベストアンサー

エクセル置換?方法を教えてください

エクセルで置換?というのか良く解りませんが、やりたい事は次のような事です。 セルA1にSA-123456という様に最初の二桁は英文字、-の後6桁の数字があります。その最初の二桁目の英文字にはA,B,C,Dのいずれかが入ります。このA,B,C,Dを判断して隣のB1セルにAの場合数字の1をBの場合2をという具合にA,B,C,Dに対し1,2,3,4を隣のセルに入れたいのですが宜しくお願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
  • nihonjinn
  • ベストアンサー率39% (79/200)
回答No.2

>二桁目の英文字にはA,B,C,D それを判断するにはMID関数を用います MID(A1,2,1) とするとA1セルの二番目から一文字を抽出します。 これを使ってB1に =IF(MID(A2,2,1)="A",1, IF(MID(A2,2,1)="B",2, IF(MID(A2,2,1)="C",3, IF(MID(A2,2,1)="D",4,"")))) とでもすればいいと思います

kazuisa
質問者

お礼

早速のご回答有難う御座います。 早速、試させていただきました。バッチリです! 何分、素人な者で有難う御座いました。

すると、全ての回答が全文表示されます。

その他の回答 (4)

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.5

一例です。 2桁目は大文字コード、ABCD以外は空白としています。 =IF(AND(CODE(MID(A1,2,1))>64,CODE(MID(A1,2,1))<69),CODE(MID(A1,2,1))-96,"")

kazuisa
質問者

お礼

ご回答有難う御座います。 試してみましたが、帰ってきた数字が-31とかのマイナスの二桁の 数字が出てしまいました。 またよろしくお願いします。

すると、全ての回答が全文表示されます。
  • goo39
  • ベストアンサー率36% (13/36)
回答No.4

ANo.1です。 失礼しました。 2文字目なら B1=CODE(MID(A1,2,1))-64 です。

kazuisa
質問者

お礼

ご回答有難う御座います。 英文字を大文字と限定するとこれはいいですね。

すると、全ての回答が全文表示されます。
  • zap35
  • ベストアンサー率44% (1383/3079)
回答No.3

2文字目は絶対にA、B、C、D、Eのどれかしか入らないなら  =FIND(MID(A1,2,1),"ABCDE") ですが、他の文字が入るとこの式だけではエラーになります。 エラーにならないようにするなら、ちょっとベタですが以下の式になります  =IF(AND(MID(A1,2,1)>="A",MID(A1,2,1)<="E"),FIND(MID(A1,2,1),"ABCDE"),"")

kazuisa
質問者

お礼

有難う御座いました。 いろいろな方法が有るのに驚いています。

すると、全ての回答が全文表示されます。
  • goo39
  • ベストアンサー率36% (13/36)
回答No.1

B1=CODE(A1)-64

すると、全ての回答が全文表示されます。

関連するQ&A