• ベストアンサー

EXCELで、全角文字のコード入手

任意の長さの全角文字列を文字コードの並びに変換したいのですが、 エクセルでどうしたらいいのでしょうか? 例えば 東京 → 938C8B9E 東京タワー → 938C8B9E835E838F81

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

  • ベストアンサー
noname#204879
noname#204879
回答No.3

    A        B      C D  E  F  G  H I  1 東京    938C8B9E         東 京         2 東京タワー 938C8B9E835E838F815B   東 京 タ ワ ー   3 通天閣   92CA93568A74       通 天 閣         J   K   L   M   N 1 938C 8B9E 2 938C 8B9E 835E 838F 815B 3 92CA 9356 8A74 D1: =MID($A1,COLUMN(A1),1) J1: =IF(COLUMN(A1)>LEN($A1),"",DEC2HEX(ROUND(HEX2DEC(LEFT(DEC2HEX(CODE(D1),4),2))/2,0)+HEX2DEC(70)+HEX2DEC(40)*(ROUND(HEX2DEC(LEFT(DEC2HEX(CODE(D1),4),2))/2,0)+HEX2DEC(70)>159))&IF(MOD(HEX2DEC(LEFT(DEC2HEX(CODE(D1),4),2)),2),DEC2HEX(HEX2DEC(RIGHT(DEC2HEX(CODE(D1)),2))+HEX2DEC(20)-(HEX2DEC(RIGHT(DEC2HEX(CODE(D1)),2))+HEX2DEC(20)<127)),DEC2HEX(HEX2DEC(RIGHT(DEC2HEX(CODE(D1)),2))+126))) B1: =J1&K1&L1&M1&N1

参考URL:
http://muse.cc.kurume-it.ac.jp/home/general/sibhome/moji/moji11.html
noname#113585
質問者

お礼

mike_gさん、回答ありがとうございました。 J1に指定の計算式を入れましたら、#NAME?が表示されました。 調べると、HEX2DECが使えないし、インストールもできないことが分かりました。

その他の回答 (2)

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.2

こんばんは。 Shift JIS 指定なのですね。JISならば、関数のCODE を使うのですが、関数で行うのは、一覧表のようなものを作らなければならないので、とても面倒です。だから、 VBA関数のAsc を使うしかないです。 標準モジュール Function SJ(rng As Variant) As String Dim myStr As String Dim buf As String Dim i As Integer   If VarType(rng) = vbString Then    myStr = rng   Else    Exit Function   End If   For i = 1 To Len(myStr)     buf = buf & Hex(Asc(Mid(myStr, i, 1)))   Next i   SJ = buf End Function 使い方は、 セルに以下のような数式を入れる =SJ("東京タワー") または、 A1: 東京タワー =SJ(A1)

noname#113585
質問者

お礼

Wendy02さん、回答ありがとうございました。

  • kawais070
  • ベストアンサー率52% (2242/4283)
回答No.1

以下のようなマクロで可能かと。 Dim strSource As String Dim strDest As String Dim i As Integer strSource = "東京タワー" strDest = "" For i = 1 To Len(strSource) strDest = strDest & Hex(Asc(Mid(strSource, i, 1))) Next MsgBox strDest

noname#113585
質問者

お礼

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

関連するQ&A

専門家に質問してみよう