
テキストボックスに、'1'って数字を入力したら、頭に'1'がつく入力候補がテキストボックスの下にリスト形式で表示され、
続けて、'2'と入力すれば、入力候補リスト内は頭に'12'がつく入力候補にかわる。
わかりやすく(?)言うと、例えば、VB6で変数の宣言をするとき Dim xxx As まで書くと入力候補のリストがカーソルの下に表示されますよね。
続けて、Dim xxx As S と入力すると、入力候補が 'S' から始まるものになりますよね。
まさに、コレがやりたいんです!!
何かいい方法、いいツールetc・・・、知っている方がいらっしゃったらぜひ教えてください。
ちなみに、開発はVB6で行います。
よろしくお願いします!!!
No.1ベストアンサー
- 回答日時:
コンボボックスで似たような挙動をさせようと思えば、
やってやれんことは無いはず。
(あくまで方向性であって、VBの仕様でできないかも・・・)
候補データが配列に格納されているとして、
該当するデータを決定するには、Like演算子を使用します。
例)
コンボボックスのKeyUpイベントに置いてください。
Private Sub Combo1_KeyUp(KeyCode As Integer, Shift As Integer)
Dim dintJ As Integer
Dim dstrPool As String
'値を保存しておきます
dstrPool = Combo1.Text
'データを消去します
Combo1.Clear
'入力データを頭から含むデータのみを再セットします
For dintJ = 0 To 49
If PoolData(dintJ) Like Trim$(dstrPool) & "*" Then
Combo1.AddItem PoolData(dintJ)
End If
Next
'リストを表示します。
SendKeys "{F4}"
end sub
ただし、これだけだとまずまともに動かんでしょう・・・^^;
最低でも、Enter等のKeyCodeは受け付けないようにしないといかんわね。
なんか挙動不審だし・・・・
今テストしてみたら、なぜか、SendKeyメソッドの影響で、
「NumLock」ボタンを押しつづけてる永久ループに入ってしまった・・(**)。
ちょっと、今日忙しいので、また後日にでもテスト結果とサンプルを乗せますね。
もしくは、どなたかフォローを・・・ (無責任な・・・(-"-))
あ、あとComboBoxの「▼」が気に入らん場合は、上にTextでも張って消しといてください。
ありがとうございます!!
私もoribeyakiさんが書いて下さっているソースを真似して
いろいろやってみてはいるのですが、なかなかうまくいきません。
また、テスト結果とサンプルを載せてくださるということなので・・・。
本当にありがとうございます。助かります!
忙しくないとき、またよろしくお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
エクセルのラベルの値(文字列)を垂直方向で中央揃えにするには?
Excel(エクセル)
-
ExcelVBA EnableプロパティがFalseの時に文字の色を変えたくない
Visual Basic(VBA)
-
UserForm1.Showでエラーになります。
工学
-
-
4
ExcelVBAのユーザーフォームの中に線を引きたい
Visual Basic(VBA)
-
5
ユーザーフォームを表示中にシートの操作をさせるには
Excel(エクセル)
-
6
エクセルVBAでテキストボックスに入力があった場合のみ、ワークシートに転記したい
Visual Basic(VBA)
-
7
ユーザーフォームでTextBox1にカーソルを移動したい
Excel(エクセル)
-
8
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
9
Access VBAで行ラベルが定義されていないというエラーが出ます
Access(アクセス)
-
10
TEXTBOXにオートコンプリート実装
Visual Basic(VBA)
-
11
テキストボックスのカーソル位置の取得・設定方法
Visual Basic(VBA)
-
12
ユーザーフォームをホイールでスクロールする方法(Excel2000VBA)
Excel(エクセル)
-
13
ExcelVBAでテキストボックスの表示形式を小数点第二位まで表示する方法
Visual Basic(VBA)
-
14
VBAのコマンドボタンの文字列の改行方法は?
Visual Basic(VBA)
-
15
テキストボックスの番号を使ったFor~Next文について
Visual Basic(VBA)
-
16
ExcelのComboboxでマウスのスクロールを有効にしたい
Excel(エクセル)
-
17
エクセル・VBA CheckBoxのオブジェクト名に変数を使うことは可能でしょうか?
Excel(エクセル)
-
18
エクセルVBAでフォームのListboxをスクロールするには?
その他(Microsoft Office)
-
19
二つのテキストボックスの内容が同時に同じ内容に
Word(ワード)
-
20
IF文に時間(何時から何時まで)の条件文を付けたい
Word(ワード)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
*をユーザーが入力した数字の数...
-
Excel VBAで、Application.Inpu...
-
プログラミング初心者です。 Py...
-
EDITコントロールで入力できる...
-
4桁の数字以外を入力したらエラ...
-
java初心者です。入力されたの...
-
コマンドプロンプトからのEOFの...
-
入力値が1以下、かつ数字以外の...
-
実行結果の順番がおかしいんで...
-
Eclipseコンソール表示を、リセ...
-
C言語におけるfgetsを用いたル...
-
C言語でのカレンダー作成
-
UWSCで変数をキー入力
-
ワードで文字を入力する時の変...
-
VB カウントダウンタイマーの作...
-
C++:cinが上手く使えない
-
キーボードを押すまで処理を中...
-
入力候補を表示させるには・・・?
-
C言語
-
Userformの入力順序をタブオー...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
*をユーザーが入力した数字の数...
-
数字以外が入力されたらエラー...
-
java初心者です。入力されたの...
-
Eclipseコンソール表示を、リセ...
-
正負を反転させて出力するプロ...
-
プログラミング初心者です。 Py...
-
scanfが2回使えない・・・?;
-
Excel VBAで、Application.Inpu...
-
"scanf"でエンターで改行させな...
-
scanf が無視されます
-
C言語 逆ピラミッドの作り方
-
プログラミングの問題です 「金...
-
if文の条件にscanf関数を使うと…?
-
C言語でgetchar();が上手く使え...
-
UWSCで変数をキー入力
-
4桁の数字以外を入力したらエラ...
-
EDITコントロールで入力できる...
-
C言語でつるかめ算をするにはど...
-
Userformの入力順序をタブオー...
-
C言語scanf_sで何故か2回入力に...
おすすめ情報