#754 現在のIMEのモードを取得するには? VBA

現在のIMEのモードを取得するには、「IMEStatus」関数を使います。

この関数では、現在のIMEモードに応じた数値が返されます。次の例では、それを「vbIMEModeNoControl」などの組み込み定数と比較する条件分岐で、分かりやすい表記に変換しています。

Dim strMode As String

Select Case IMEStatus
  Case vbIMEModeNoControl
    strMode = "コントロールなし"

  Case vbIMEModeOn
    strMode = "オン"

  Case vbIMEModeOff
    strMode = "オフ"

  Case vbIMEModeDisable
    strMode = "使用不可"

  Case vbIMEModeHiragana
    strMode = "ひらがな"

  Case vbIMEModeKatakana
    strMode = "全角カタカナ"

  Case vbIMEModeKatakanaHalf
    strMode = "半角カタカナ"

  Case vbIMEModeAlphaFull
    strMode = "全角英数"

  Case vbIMEModeAlpha
    strMode = "半角英数"

End Select

MsgBox strMode, vbOKOnly + vbInformation


※注:
これは特定のコントロールのIME入力モードプロパティを取得するものではありません。例えばコマンドボタンにフォーカスがある状態で実行すると、コマンドボタンではIMEは使えませんので、常に”使用不可”となります。
事前に任意のテキストボックスなどにフォーカスを移動してからこのプログラムを実行することで、そのテキストボックス入力でのIMEモードを取得できます。
| Index | Prev | Next |



T'sFactory
Accessで動く生産管理DB
Ureru Express
Webで使う販売顧客管理
Access開発&アドバイス
DB開発やテクニカルアドバイス
Copyright © T'sWare All rights reserved