Home » Excel(エクセル)の関数・数式の使い方 » 文字列 » 英数字だけ半角に変換したい、カタカナは全角のまま

英数字だけ半角に変換したい、カタカナは全角のまま

対象:Excel97, Excel2000, Excel2002, Excel2003, Excel2007

「全角の文字を半角に変換するにはどうしたらいいのでしょうか?」
というのはExcelに限らず、大量のデータを整理しているような方からいただく定番のご質問です。

Excelの場合上記のようなご質問をいただいたときには、まず全角文字を半角にできるASC関数をご案内します。

[スポンサードリンク]

ASC関数ではカタカナも半角になってしまう

しかし、ASC関数だけでは先の要望にはこたえられないこともよくあります。

ASC関数ではカタカナが半角になってしまうからです。

そのため、
「カタカナは全角のままで英数字だけ半角にしたいのですが・・・?」
「英数文字だけ半角に変換するにはどうしたらいいのでしょう?」
といったご質問をいただくことになります。

ASC関数とPHONETIC関数で英数字だけ半角に

アメリカ生まれの表計算ソフトExcelには、カタカナは全角のまま英数文字だけ半角にするというワークシート関数は用意されていないので、関数で処理したいということであればVBA(Visual Basic for Applications)でユーザー定義関数を作る必要があります。

ユーザー定義関数はちょっとという場合、どうしても手作業を入れざるをえません。

ですが、、
[ふりがな]機能とPHONETIC関数も合わせて利用すれば、そこそこの手間でカタカナは全角、英数は半角という状態にできます。
▼操作概要:カタカナは全角のまま英数文字だけ半角に変換する
※A2セルに入力されているデータをB2:C2セルを作業用に使いながら、カタカナは全角・英数文字は半角にしてD2セルに表示する例
B2セルに「=ASC(A2)」という数式を入力
 ↓
B2セルをコピーしてC2セルに値のみ貼り付け
 ↓
D2セルに「=PHONETIC(C2)」という数式を入力

上記の操作を行えばD2セルにはカタカナは全角のまま英数文字だけ半角のデータが表示されます。

あとはD2セルをコピーしてD2セル自身や、元データが消えていいのならA2セルに、値貼り付けすればOKです。

半角カタカナやひらがなが表示される場合

万一上記の操作で、D2セルに半角カタカナやひらがなが表示される場合、C2セルで[ふりがなの設定]ダイアログを表示して[全角カタカナ]オプションを選択してください。[ふりがなの設定]ダイアログは2003までのExcelならメニュー[書式]−[ふりがな]−[設定]から、Excel 2007なら[ホーム]タブ−[フォント]グループ−[ふりがなの表示/非表示][▼]ボタン−[ふりがなの設定]から表示できます。

元データにひらがなが含まれているときは要注意

ただし、この方法では問題が発生することもあります。

元データにひらがなが含まれている場合、ひらがなの部分が全角カタカナになってしまうのです。

ひらがなが含まれているデータについては、別途手作業での修正などが必要になります。

ただ、私が「カタカナ全角、英数だけ半角」という要望を受けた過去の経験では、住所や社名などのデータ整理の際にこの要望をいただくことが多く、その場合はひらがなが含まれているデータはかなり少ないため、ひらがなのあるデータだけ個別に修正するなどの対応でOKだった記憶があります。

VBAはちょっと、というレベルの方で英数文字だけ半角にしたいという方は、万全というわけではありませんが、一度上記の方法を試してはいかがでしょうか。

関連語句
半角変換するには

[スポンサードリンク]

Home » Excel(エクセル)の関数・数式の使い方 » 文字列 » 英数字だけ半角に変換したい、カタカナは全角のまま

「文字列」の記事一覧

検索


Copyright © インストラクターのネタ帳 All Rights Reserved.

.