- ベストアンサー
名簿の漢字名を関数で半角カナ文字にすることは可能でしょうか?
質問タイトルとおりですが。。。。 エクセルで名簿の名前に、半角カナ文字をふりたいのですが データが1万件以上あるので、非常に手間がかかります。 もし、関数で変換できる方法がありましたら、ぜひご教授お願いします。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
Excel2002の場合でお答えします。 そのものズバリ、「phonetic」という関数があります。 この関数は全角なら全角でフリガナを表示しますので、 半角のフリガナにするには「ASC」という関数と合体 (入れ子構造)します。 使い方としては、例えばA列に名前が入っていて、 B列にふりがなを表示させたい場合、 B1に「=ASC(PHONETIC(A1))」と入力します。 ただし、この関数は、「入力したときの変換前の読み」 を表示しますので、例えば「六本木」と書いてあっても・・・ 「ろっぽんぎ」と入力→変換→「六本木」と確定 した場合は「ロッポンギ」と表示されますが、 「ろく」と入力→変換→「六」で確定 「もと」と入力→変換→「本」で確定 「き」と入力→変換→「木」で確定 した場合には、「ロクモトキ」と表示されます。 また、他のデータ(テキストやCSVなど)からインポート したものは、ふりがな情報が入っていないことがあります。 その場合は、もとの漢字が表示されてしまいます。 こういった状態のデータが含まれる場合、50音順の並び替えがうまく出来ない、などのトラブルが発生するもとになりますので、ふりがな情報を編集してやる必要があります。 ※ご存知かも知れませんが、ふりがな編集の方法↓ 編集したいセルを選択した状態で、メニューバーの 「書式」→「ふりがな」→「編集」で編集できます。 ショートカットキーは、Alt+Shift+↑です。
その他の回答 (4)
- Wendy02
- ベストアンサー率57% (3570/6232)
こんばんは。 #1 さんの >=ASC(PHONETIC(名前のセル番地)) で取れないのだから、一つずつセルから、ふりがなデータをAlt + Shift + ↑で呼び出すか、#4 さんのような、VBA を使って行うしかないと思います。 ただ、#4 さんで行った場合は、1万件などとなると、後で、説明にあるように、コピー、値-貼り付けで定数化しないと、シートが重くなってしまいます。そこで、最初から定数化させるマクロを掲示しておきます。こちらは、おまけですから、別に、先の方で解決するようでしたら、これは試す必要はありません。 '標準モジュールが良い '----------------------------- '標準モジュールが良い Sub FuriganaMarco() Dim i As Long Dim iCol As Integer Const ACOL As String = "B" 'どこの列に出力? Application.ScreenUpdating = False With Range("A1:A10000") '範囲は? iCol = Columns(ACOL).Column For i = 1 To .Rows.Count If .Cells(i, 1).Value <> "" And VarType(.Cells(i, 1)) = vbString Then Cells(i, iCol).Value = GetFurigana(.Cells(i, 1)) End If Next i End With Application.ScreenUpdating = True End Sub Function GetFurigana(rng As Range) 'If IsEmpty(rng) Then Exit Function '単独で使う時には、上記のコメントブロックを外す If rng.Phonetic.Text = rng.Value Then If Application.GetPhonetic(rng) <> "" Then GetFurigana = StrConv(Application.GetPhonetic(rng), vbNarrow) Else GetFurigana = rng.Value End If Else GetFurigana = StrConv(WorksheetFunction.Phonetic(rng), vbNarrow) End If End Function '----------------------------- なお、これは、IMEの変換の記憶によって出されるものですから、MS-IMEがあるということが条件であることと、IMEの変換順序の第一番目以外のものに対しては、このようなマクロでは出てきません。また、一部の漢字の中には、ふりがなを持たないものがあったと思います。それには対応できません。
- mshr1962
- ベストアンサー率39% (7417/18945)
VBAを使っていいなら 1. Alt+F11でVisualBasicEditorを起動 2. 「挿入」「標準モジュール」 3. 標準モジュール"Module1"内に下記の記述をコピー Function KANA(MOJI) KANA = StrConv(Application.GetPhonetic(MOJI), vbNarrow) End Function 4. VisualBasicEditorを閉じる。 5. 漢字名のセルの隣で =KANA(漢字名のセル座標) として表示確認 6. 上記のセルをコピーして「形式を選択して貼り付け」で値として貼り付ける。
- jakotama92
- ベストアンサー率35% (28/78)
名前が入っているのがA列として、 (1)A列を選択し、書式メニュー→ふりがな→設定をクリック。 (2)半角カタカナを選択。OK. (3)ふりがなを入れたいセルB1に=PHONETIC(A1)と入力。 (4)B1の数式をB列の他のセルにコピー。 半角カタカナでふりがなが出ます。 ふりがなが違うときは、A列(漢字の方)のセルを選択し、 書式メニュー→ふりがな→編集を選択し、手修正。
- minarai
- ベストアンサー率30% (167/540)
漢字の名前が正しい読みで入力できていれば・・・なんですが、 =ASC(PHONETIC(名前のセル番地)) で可能です。
補足
回答ありがとうございます。 やってみましたが、、、、漢字がそのまま表記されました。 質問がわるかったのかもしれません。 関数を入れるセルには「カタカナ」を表示させたいのです・・・。 もしわかればご教授ください。