[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『VBA テキストボックスでのエンターキー操作』(かず)
ユーザーフォーム上にリストボックス、テキストボックス、ボタンが配置されています。
リストボックス内のリストをテキストボックスで検索してリストを絞る形のプログラムを組んでいます。
現在、テキストボックス内に検索したい文字を入力してボタンを押すと検索結果が出るようになっているのですが、テキストボックス内でエンターキーを押すとボタンを押したことになるようにプログラムを組みたいです。ネット上を検索してみたのですが、知識不足のため理解できません。
ご教授いただければ幸いです。
< 使用 Excel:Excel2013、使用 OS:Windows7 >
まずはユーザーフォームモジュールのコードをアップしてみては?
(渡辺ひかる) 2019/11/01(金) 13:11
Private Sub CommandButton1_Click() call 命令 End Sub
Private Sub TextBox1_AfterUpdate() call 命令 End Sub
Private sub 命令() Listbox1.additem "かず" End Sub (sample) 2019/11/01(金) 13:23
Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer) If KeyCode = 13 Then Call CommandButton1_Click KeyCode = 0 End If End Sub (???) 2019/11/01(金) 15:06
Dim lastRow As Long Dim myData, myData2(), myno Dim i As Long, j As Long, cn As Long
' If TextBox1.Value = "" Or TextBox2.Value = "" Then End
'検索するデータを配列 myData に格納しています。 With Worksheets("検索") lastRow = .Cells(Rows.Count, 1).End(xlUp).Row myData = .Range(.Cells(4, 1), .Cells(lastRow, 7)).Value End With
'配列 myData の中で検索で一致したデータを配列 myData2 に格納しています。 ReDim myData2(1 To lastRow, 1 To 3) For i = LBound(myData) To UBound(myData) If myData(i, 1) Like "*" & TextBox1.Value & "*" Then cn = cn + 1 myData2(cn, 1) = myData(i, 7)
End If Next i
'検索で一致したデータをリストボックスに表示します。 With ListBox1 .ColumnCount = 1 .ColumnWidths = "70" .List = myData2 End With
End Sub
'ユーザーフォームの初期設定:リストの全データを表示しています。
Private Sub UserForm_Initialize()
Dim lastRow As Long Dim myData, myData2() Dim i As Long, j As Long
With Worksheets("検索")
lastRow = .Cells(Rows.Count, 1).End(xlUp).Row myData = .Range(.Cells(4, 1), .Cells(lastRow, 7)).Value End With
ReDim myData2(1 To lastRow, 1 To 3) For i = LBound(myData) To UBound(myData) myData2(i, 1) = myData(i, 3) myData2(i, 2) = myData(i, 7)
Next i
With ListBox1 .ColumnCount = 1 .ColumnWidths = "40" .List = myData2 End With End Sub
不要な点もあるかもしれませんが、上記モジュールは問題なく作動しています。
テキストボックス1にはモジュールは設定していません。
(かず) 2019/11/01(金) 15:11
If KeyCode = 13 Then Call CommandButton1_Click KeyCode = 0 End If End Sub (???) 2019/11/01(金) 15:06
これを記入しましたら正常に作動しました。ありがとうございました。
(かず) 2019/11/01(金) 15:12
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.