- ベストアンサー
「設定値」は設定できないのですか?
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
アクセスということなのでVBAだと思います。バージョンが分からないので、もしかしたら違うところがあるかも知れません。 >Forms("Fログイン").txt_サイト名.IMEMode = "Hiragana" の「txt_サイト名」というのはTextBoxでいいでしょうか。 まず、「型が一致しません。(Error 13)」になってしまうのは、TextBox.IMEModeには数値を設定しなければいけないのに、文字列("Hiragana")を設定しようとしているためです。 コードで(VBAで)設定するときは、ヘルプにある「Visual Basic」の列を設定します。 「設定値」の列は、たぶん、デザインビューのプロパティシートで設定するときのものだと思います。 なので、 Forms("Fログイン").txt_サイト名.IMEMode = 4 ということになるのですが、「4」では覚えにくいし、後で何だか分からなくなってしまいやすいので、こういうときは、定義済みの定数(列挙)を使うといいと思います。 列挙を使うとこの場合は、 Forms("Fログイン").txt_サイト名.IMEMode = acImeModeHiragana あるいは Forms("Fログイン").txt_サイト名.IMEMode = AcImeMode.acImeModeHiragana になります。 (AcImeMode.acImeModeHiraganaは値が4として定義されています。) 最初から使えるオブジェクト(自分で作成したものでなくAccess等で定義済みのオブジェクト)のプロパティには、それ用の列挙が用意されていることがよくあります。 ただ、ヘルプでは、TextBox.IMEModeのページを見ても、どの列挙が使えるのかが分からないですね。 どこかに分かりやすくまとめたサイトがあるかも知れませんが、アクセスのヘルプからは「列挙」や「Enumerations」「定数」(バージョンによって名称が違うかもしれない)のページから、それらしい名前のもの(この場合はImeが付いているなど)を探さないといけないみたいです。 それよりも、オブジェクトブラウザで調べた方が早いと思います。 コードを入力する画面でF2キーを押すとオブジェクトブラウザが表示されると思いますが、そのなかで、クラス(TextBox)、メンバ(IMEMode)とたどっていくと、IMEModeに設定できる列挙が表示されます。 Access2013のドキュメント http://msdn.microsoft.com/ja-jp/library/office/ff837038.aspx http://msdn.microsoft.com/ja-jp/library/office/ff835083.aspx
その他の回答 (1)
- chayamati
- ベストアンサー率41% (260/624)
お礼
ありがとうございます。