|
▼sin さん:
>すいません、どうも再現性の低い質問だったようです。
>windowsのバージョン officeのバージョンが違うもの
>数台のパソコンで試しましたが、再現したりしなかったりでした。
>また、設定するタイミングも
>・プロパティウィンドウでIMEModeを設定する場合
>・UserFormのInitialize時にIMEModeを設定する場合
>・TextBox1のEnter時にIMEModeを設定する場合
>でそれぞれ再現性が違いました。
それは、難しいですね
>【38426】で頂いたアドバイスで、視界が開けました。
>タイミングは違うのですが、まさにその考え方で解決させました
>
>Private Sub TextBox1_Enter()
> TextBox1.IMEMode = 6
>End Sub
>
>Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
> TextBox1.IMEMode = 4
>End Sub
>
>にしました。
解決の参考になったようですね
よかった(^^;
>ただ、シート上のでのIMEModeの取得・設定の仕方が気になったので、
>ついでに調べてみたのですが、
API関数ですね、確かにそれならできますね
>こんな方法しかないのでしょうか?
>(一通り調べたつもりですが・・・)
>WorkbooksとかApplicationあたりのプロパティ
>にありそうな気がするんですが・・・
残念ながらプロパティにはなさそうです
ただ、関数に IMEStatus というのがあります
その時の IMEMode を返してくれますので
値の取得はできますが、設定はできないようです
|
|