0

中国語の語彙を復習するために使用できる、VBA を使用した簡単なプログラムを作成しています。

これまでのところ、かなりの作業を行ってきましたが、「ā」(Unicode 257) などのマクロン文字を入力する際に​​大きな問題が発生しました。私が現在取り組んでいる特定のアプリケーションには、テキスト ボックスに入力したときに "a" が自動的に置き換えられるように、テキスト ボックス フォームの内容を変更することが含まれます。このような手順自体は簡単です。ピンイン文字 "á" と "à" を使用して動作させることができます。

Select Case testchar
    Case "a"
    Mid(strclip, markloc, 1) = "ā"
End Select

前の例は、Mid 関数を使用して、テキスト ボックス文字列内の 1 文字を、ユーザーからの適切な合図でピンイン文字に置き換える試みです。

問題は、VBA に「ā」を入力できないことです。私はインターネットを見回してきましたが、これは他の誰にとっても問題のようには見えません。VBA エディタで alt + 0257 を入力しても何も起こりません。メモ帳からコピー&ペーストすることもできません..VBAをスクラップして、このアプリケーションを他の言語でやり直す準備ができています..

乾杯

4

2 に答える 2

3

ChrW を使用して Unicode 文字を生成できます。

Mid(strclip, markloc, 1) = ChrW(257)
于 2008-10-15T07:28:52.210 に答える
0

マシンに ms-office をインストールして試していません。
ただし、Unicode のパラメーター (LCID と共に) で StrConv 関数を使用して、Unicode コンテンツをテキスト ボックスに入れることができます。

VB6 スタイルのコントロールは Unicode 値を受け入れないことに注意してください。
VBA エディター内でフォームを作成している場合は、動作するはずです (フォーム 2.0 ライブラリを使用しているため)。

于 2008-10-15T07:25:49.017 に答える