アプリ版:「スタンプのみでお礼する」機能のリリースについて

Excel VBAでハングルを日本語に置換することはできますか?
例えば、

Range("A:A").Replace What:="일본", Replacement:="日本"

を行いたいのですが、VBEでハングルを入力できません。
よい方法があれば、お教えください。

A 回答 (2件)

Excelのシート上ではユニコードに対応しているので


ハングルでも中国でも表示できますが
日本語VBA上ではShift-JIS(ANSI)の文字コードでしか扱えません。
"일본" が"??" になっているかと。

なので入れ物(Cell)ごと渡してしまえば簡単です。
   A     B 
1 検索文字  일본
2 置換文字  日本
3 置換対象  你好吗일본
4 置換結果  你好吗日本

range("b4")=replace(range("b3"),range("b1"),range("b2"))
ご参考まで。
    • good
    • 1
この回答へのお礼

早速の明快なご教示を有難うございます。
この方法でうまくゆきました。

お礼日時:2014/01/01 14:20

試しにやってみました。

ご参考まで。

'Unicodeの文字コードを調べる
Sub test()
Dim buf As String
Dim i As Long

buf = Range("A1").Value
For i = 1 To Len(buf)
Debug.Print Hex(AscW(Mid(buf, i, 1)))
Next i
End Sub

'C77C
'BCF8

Sub test2()
Dim buf As String

buf = ChrW(&HC77C) & ChrW(&HBCF8)
Range("A1").Value = Replace(Range("A1").Value, buf, "日本")
End Sub

'VBEでの表記はやめてセルに入れた値を用いる案
Sub test3()
Range("A1").Value = Replace(Range("A1").Value, Range("A2").Value, "日本")
End Sub
    • good
    • 0
この回答へのお礼

詳細なご教示を頂き、有難うございます。
第2の方法でうまくいきました。

お礼日時:2014/01/01 14:21

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています