[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『次のテキストボックスへタブキーで移動させたい』(てら)
エクセルのシートにテキストボックスを複数置いてます。(Excel2000)
で、次のテキストボックスへはタブキーで移動させたいのですがうまくできません。
テキストボックスに =EMBED("Forms.TextBox.1","") という式が設定されるのですが
(テキストボックス1〜10まで全て同じ式)、
これを編集しようとすると「入力した文字列は参照名または義名として正しく
ありません」とメッセージが出ます。
ここの式が誤っているから次のテキストボックスへタブやエンターで移動できないので
しょうか?
マクロへはこのように書いてみたのですが・・・。
Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
If KeyCode = 9 Then TextBox2.Activate End If End Sub
「編集しようとすると」という意味がいまいちわからないけど、アップされたコードを、そのまま シートモジュールに貼付け、TextBox1に入力後、タブキーをおすと、TextBox2にカーソルは移動するよ?
もしかして、「編集」といっているのは、シート上で、デザインモードにして数式バーにある =EMBED("Forms.TextBox.1","") この数式を何かに変更しようとしたのかな?
もしそうなら、何のために何に変更しようとしたのか教えてくれる?
(ぶらっと)
で、何が悪いのかわからず、すべてのテキストボックスが、"=EMBED("Forms.TextBox.1","")"
となっているので、ここの"Forms.TextBox.1"をTextBox.2、3・・・と変更しないといけないのかな?
と思いまして・・・。
(てら)
>ここの"Forms.TextBox.1"をTextBox.2、3・・・と変更しないといけないのかな? >と思いまして・・・。
これはさわっちゃいけない。 TextBox.1 つまり、TextBox と 1 の間に .(ピリオド)が入っているよね。 これは TextBox1 ということではなく、ActiveXコントロールのTextBoxタイプのものだよという記述なので。
>これが、なぜか移動しないのです
タブキーをおしてる?エンターキーだと(アップされたコードでは)移動しないよ?
(ぶらっと)
これは TextBox1 ということではなく、ActiveXコントロールのTextBoxタイプのものだよという記述なので。 ⇒承知しました。
タブキーおしてるのですが・・・
テキストボックスのプロパティとかを変更しないとダメですか?
(てら)
う〜ん・・・レスしたように、こちらでは移動するので・・・
Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
この下に MsgBox KeyCode と記述し TextBox1 でタブキーを押して、メッセージの内容を確認してみては?
(ぶらっと)
たくさん考えていただいて有難うございました。
(てら)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.