Excel (VBA) |
![]() ![]() |
(Windows 11 Pro : Excel 2016)
↓キーと↑キーでは動きが違う?
投稿日時: 23/02/13 16:04:29
投稿者: taichi
|
---|---|
UserForm に Listbox1、TextBox1、CommandButton1 を配置して試しています。
|
![]() |
投稿日時: 23/02/13 17:01:59
投稿者: WinArrow
|
---|---|
ヒットした時に、ヒットしたデータが表示されればよいので
Private Sub CommandButton1_Click() Dim Lx As Long With Me.ListBox1 For Lx = 0 To .ListCount - 1 If .List(Lx, 0) = Me.TextBox1.Text Then .ListIndex = Lx Exit For End If Next End With End Sub ※ヒットしたら、検索する必要はないので、ループから抜ければよいです。 ※上から検索したほうが早いか/下から検索したほうが早いかは、 データの中身如何です。 |
![]() |
投稿日時: 23/02/13 19:39:19
投稿者: taichi
|
---|---|
WinArrow さん いつも有り難うございます。
|
![]() |
投稿日時: 23/02/13 20:50:21
投稿者: WinArrow
|
---|---|
掲示したコードは、ヒントです。
|
![]() |
投稿日時: 23/02/13 20:55:50
投稿者: WinArrow
|
---|---|
>Private Sub TextBox1_Change()
|
![]() |
投稿日時: 23/02/13 23:36:03
投稿者: WinArrow
|
---|---|
最初の説明を、取り違えていました。
引用: ListBox1の「値」(1〜6)とTetbox1の「値」で シートの表を検索するということですね? 疑問1 選択肢が6つしかにのだから Listbox1を手操作で「↓」「↑」すれば、テキストボックスのKEYでそうさするより早いと 思います。 それとも「1」〜「6」まで、連続で検索したいということかな? 別案 オートフィルタを使った方が早いのではないでしょうか? シート表内が、ランダムでもオートフィルタのドロプダウンリストは昇順になります。 または、数値フィルタ’ユーザ定義)で「1000〜1999」の範囲指定も可能です。 文字列ならば、テキストフィルタで、「?234」のような指定もできます。 |
![]() |
投稿日時: 23/02/14 09:37:54
投稿者: taichi
|
---|---|
|
![]() |
投稿日時: 23/02/14 10:25:31
投稿者: WinArrow
|
---|---|
>下3桁の数字を入れ、Hitすれば当日の出席欄に〇を付ける作業です。
Private Sub TextBox1_AfterUpdate() Dim 氏名 As String Dim SKEY As Long, Lx As Long Const ShtNM = "Sheet1" With Me.ListBox1 .ColumnCount = 2 .ColumnWidths = "30;80" .Clear For Lx = 0 To 5 SKEY = Lx + 1 & Me.TextBox1.Text If WorksheetFunction.CountIf(Sheets(ShtNM).Columns("B"), SKEY) > 0 Then 氏名 = WorksheetFunction.VLookup(SKEY, Sheets(ShtNM).Colimns("B:C"), 2, False) Else 氏名 = "" End If .AddItem SKEY .List(.ListCount - 1, 1) = 氏名 Next End With End Sub テキストボックスでEnterを押すと リストボックスに6人の氏名が表示されます。 |
![]() |
投稿日時: 23/02/14 11:23:36
投稿者: simple
|
---|---|
お邪魔します。
|
![]() |
投稿日時: 23/02/14 12:06:53
投稿者: Suzu
|
---|---|
今回の、KeyDownを含めた、Key ○○のイベントは
|
![]() |
投稿日時: 23/02/14 16:54:46
投稿者: はぶ
|
---|---|
失礼します。試しに、TextBox1 と CommandButton1 の間に
|
![]() |
投稿日時: 23/02/15 22:28:17
投稿者: taichi
|
---|---|
■ WinArrow さん
|
![]() |
投稿日時: 23/02/16 07:57:04
投稿者: WinArrow
|
---|---|
taichiさん
|
![]() |
投稿日時: 23/02/16 14:37:37
投稿者: taichi
|
---|---|
一応目的は達成できました。
|