1

Microsoft Project VBAを使用して、アクティビティ名を英語から中国語に翻訳しています。

私の問題は、いくつかの英語の活動名にいくつかの中国語の翻訳が埋め込まれていることです。文字列をMicrosoftTranslatorに渡す前に、漢字を削除したいと思います。

どうすればそれができるかについてのアイデアはありますか?

4

2 に答える 2

7

を使用しRegexpて、中国語のUnicode文字を削除 できます

ウィキペディアには、関連する文字が以下にリストされています

ここに画像の説明を入力してください

Sub Test()
Dim myString as String
myString = "This is my string with a " & ChrW$(&H6C49) & " in it."
Dim objRegex As Object
Set objRegex = CreateObject("vbscript.regexp")
With objRegex
    .Global = True
    .Pattern = "[\u4E00-\u9FFF\u6300-\u77FF\u7800-\u8CFF\u8D00-\u9FFF]+"
    MsgBox .Replace(myString, vbNullString)
End With
End Sub

したがって、この正規表現はこれらの範囲を取り除きます。aldo.roman.nurenaの文字列の例を使用しました

于 2012-05-23T10:32:34.607 に答える
0

あなたはChrW$()これとして使用する必要があります:

MyString = "This is my string with a " & ChrW$(&H6C49) & " in it."

これH6C49は、UnicodeでCJKコード(中国語、日本語、韓国語)として利用できます(神に感謝します)。文字範囲を確認するには、これを参照してください。

したがって、文字Unicodeコードを確認してから、それがすでにCJK範囲にあるかどうかを比較して、変換する必要があります。

ここには良い説明と文字列を翻訳するプログラムさえあります

于 2012-05-22T22:13:42.767 に答える