• ベストアンサー

エクセル:半角カナを全角に、半角英数はそのままに。

エクセル:半角カナを全角に、半角英数はそのままに。 ひらがな・漢字・半角カナ・半角英数が混じったセルが縦に沢山あります。 半角カナだけを全角にし、半角英数はそのままにしたいのですが、JISでは全て全角になってしまいます。 どなたか良い関数を教えてください。

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

  • ベストアンサー
  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.2

ご使用のエクセルのバージョンが提示されていないのですが、エクセル2007ならネストの制限にかからないので、以下のような数式1つで変換することができます(A2セルにデータがある場合)。 =SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(JIS(A2),"0",0),"1",1),"2",2),"3",3),"4",4),"5",5),"6",6),"7",7),"8",8),"9",9) 古いバージョンのエクセルで変換したいなら、B2セルに「=JIS(A2)」 C2セルに以下のような式を入力し、右方向にL列まで、下方向にデータ数分だけオートフィルすればL列に変換後のデータが表示されます。 =SUBSTITUTE(B2,TEXT(COLUMN(A1)-1,"[DBNum3]0"),COLUMN(A1)-1)

kurakura_k
質問者

お礼

ご回答ありがとうございました。 これならできそうです!

その他の回答 (2)

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.3

力ずくでやるとしたら次のようにすればよいでしょう。 A1セルから下方にデータがあるとします。入力されている文字列の長さは仮に8文字までとします。 B1セルには次の式を入力してI1セルまでオートフィルドラッグし、その後に下方にもオートフィルドラッグします。 =IF(OR($A1="",LEN($A1)<COLUMN(A1)),"",IF(AND(CODE(MID($A1,COLUMN(A1),1))>=177,CODE(MID($A1,COLUMN(A1),1))<=221),JIS(MID($A1,COLUMN(A1),1)),MID($A1,COLUMN(A1),1))) J1セルには次の式を入力して下方にオートフィルドラッグします。 =CONCATENATE(B1,C1,D1,E1,F1,G1,H1,I1) 最後にJ列を選択してコピーし、その後にA1セルを選択して「形式を選択して貼り付け」で「値」にチェックをして貼り付けます。 B列からJ列まではその後に削除しても良いですね。

kurakura_k
質問者

お礼

ご回答ありがとうございました。 参考にさせていただきます!

noname#145943
noname#145943
回答No.1

・Excel VBA http://www.moug.net/tech/exvba/0140015.htm http://okwave.jp/qa/q1153932.html ・間にその種のことがラクにできるエディタを挟む 半角カナだけを全角にしたい 英数だけを半角にしたい | 名古屋市・春日井市の出張パソコンサポート日記 http://delightnet.jugem.jp/?eid=4

kurakura_k
質問者

お礼

ご回答ありがとうございます。 VBAは知識もなくやったことがないので、関数でできればと思っていました。

関連するQ&A