- ベストアンサー
Visual Basic Editorの検索ダイアログの文字化け
Excel 2003のVisual Basic Editorにおいて検索ダイアログを開いて[検索する文字列]に日本語を入れて日本語への変換を行うと、そのテキストボックスが文字化けします。この症状は、Adobe Reader 6.0で韓国語フォントをインストールすると起こります。Adobe Reader 6.0の韓国語フォントをアンインストールしてPCを再起動すると、その症状は納まりますが、再びインストールすると再発します。仕事上、韓国語フォントがいるので、困っています。すみませんが、教えてください。 環境 OS:Windows XP Professional PC:VGC-RA50(バイオ) CPU:ペンティアム4ハイパースレッティングイネーブル Excel Version:Excel 2002およびExcel 2003で起きる。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
それでは、こっちのことかな? [OFFXP] Visual Basic エディタの検索ダイアログで文字が正常に表示されない これは、根本的な解決には至っていないそうですが。
その他の回答 (2)
- pppc88
- ベストアンサー率43% (40/93)
Adobe製品の関係はわかりませんが、実は私も同じような現象で困っています。(「あああ」→「bあ」となります) 検索したい文字列がエディタにあればそれを、またはメモ帳で検索したい文字列を入力してからそれをコピー、検索ダイアログ上でペーストといった操作で一応回避できます。
お礼
No.3の回答のように解決には至りませんでしたが、マイクロソフトは現象を認識しており、現在解決に取り組んでいることがわかりました。 ご回答ありがとうございました。
補足
そうですね。コピーペーストであれば、検索は使用できますね。要するに、[検索]ダイアログ上で変換操作を行うと、文字が化けてしまうということですね。 私はコード上で ' を打って注釈として入力して変換後にコピーペーストすることにより凌いでいますが、結構面倒です。
- Wendy02
- ベストアンサー率57% (3570/6232)
コードがないのでよく分かりませんが、検索ダイアログを起動させているだけではありませんか? 例: Application.Dialogs(xlDialogFormulaFind).Show 一般操作側の検索で、文字化けはともかく「ハングル文字」自体の検索できるのでしょうか? もし、可能なら、Userform に「検索する文字列」を入れて、そこから、Find メソッドを使えばよいのではありませんか?InputBox側は確約できません。 少なくとも、UserformのTextBox 自体は、Fontの仕様を選べますから、それで必要に応じて変更させてもよいし、そのままなら、Unicode仕様になっています。 ただ、検索自体は、Findメソッドに渡す以上は、Findメソッドの仕様に影響されますから、Findメソッド自体の問題が残されてしまいます。どちらかというと製作者側の意図に沿った文字列検索というほうが正確かもしれません。それが問題の場合は、Office XP などの User Interfaceを使えばより確実かと思います。 参考: ・Office XP with Multilingual User Interface Pack に関する Q & A
- 参考URL:
- http://www.microsoft.com/japan/office/previous/xp/evaluation/indepth/multilingual/muipackfaq.asp
補足
プログラムから検索ダイアログを開くのではなく、コードの検索のためにCtrl+Fでダイアログを開いて、そこに日本語を入れて変換すると、文字化けします。例えば、「しんき」と入力して変換キーを押すと、奇妙な文字になります。
お礼
ありがとうございました。 漢字変換を 1 文字ずつ行うことによって正常に変換することができましたので、ご指摘のとおりのようです。また、ノートパソコンではこの症状が起きませんので、インテリマウスも関係しているようです。 ただし、私の場合、Adobe Readerで韓国語フォントや中国語フォントをインストールすると、症状が起き、削除してPCを再起動すると、症状がなくなります。マイクロソフトが原因を追究する上で参考になるかもしれません。 実際には一文字ずつ変換すると、大変手間なので、むしろ別のアプリで変換した後、貼り付ける方がまだ実用的です。マイクロソフトには早めの修正を期待したいと思います。 解決には至りませんでしたが、状況がわかってすっきりしました。本当にありがとうございました。