advanced help
per page, with , order by , clip by
Results of 1 - 1 of about 978 for チェックボックス (0.008 sec.)
[[20190404225517]]
#score: 5499
@digest: a4d0583d7abc349a7838f8a9fc822c24
@id: 79169
@mdate: 2019-04-05T04:04:26Z
@size: 4101
@type: text/plain
#keywords: chkboxes (72681), ibox (54527), defaultcolor (22494), checkbox (6797), クボ (6058), control (5016), 回ユ (4850), ン二 (4706), setfocus (3874), ミッ (3742), forecolor (3137), カス (2405), typename (2253), ム内 (2106), controls (1914), ボッ (1785), ctrl (1613), ッキ (1567), チェ (1531), ーカ (1497), 月」 (1485), クス (1433), ェッ (1386), ォー (1372), 検索 (1314), textbox1 (1237), ック (1118), private (1070), フォ (1054), 点線 (1022), caption (1013), ーフ (860)
『ユーザーフォーム内のチェックボックス検索機能について』(ミッキー)
いつもお世話になっております。 VBA初心者ですので、お手柔らかにお願いいたします。 今回ユーザーフォームのチェックボックスについて教えていただきたく ご質問いたしました。 チェックボックスの項目が100個以上あるユーザーフォームを作成しまして、 そのフォーム内でテキストボックスを使用してチェックボックスの項目を 検索できるようにしました。 部分一致で検索できるようにしたのですが、その検索する文字が複数の チェックボックスに含まれている場合、最初の項目で止まってしまいます。 例: 「1月」「2月」「3月」というチェックボックスがあった場合 "月"で検索すると最初の「1月」で検索が止まる。 いろいろ検索して、なんとか上記の状態の検索フォームは作成することが できたのですが、繰り返しの検索にするにはどう作成したらいいのか 行き詰りました。 現在の状態が下記です。 Private Sub CommandButton1_Click() Dim ctrl As Control If TextBox1.Text = "" Then Exit Sub For Each ctrl In UserForm1.Controls If TypeName(ctrl) = "CheckBox" Then If InStr(ctrl.Caption, TextBox1.text) Then ctrl.SetFocus Exit sub End If End If Next MsgBox "見つかりませんでした。" End Sub また、検索で一致した項目にフォーカスが移るという仕様になっていますが、 それを点線のフォーカスではなく、チェックボックスの色を変えて表示する ということは可能でしょうか? つたない質問文で申し訳ありませんが、 何卒お力添えをよろしくお願いいたします。 < 使用 Excel:Excel2016、使用 OS:Windows10 > ---- >繰り返しの検索にするにはどう作成したらいいのか どう繰り返すのか意味が解りません。 >チェックボックスの色を変えて表示する CheckBoxのプロパティを見れば良いと思うけど、そういうことはしないの? (BJ) 2019/04/05(金) 03:09 ---- BJ様 下手くそな質問の仕方で申し訳ありません。 つまり、「月」で検索して「3月」にフォーカスを移したいけれども、 先にある「1月」で検索が止まってしまいます。 これを同じ文字が含まれている項目を順番に検索できるように したいと思っております。 要するにCtrl+fのようなイメージです。 >CheckBoxのプロパティを見れば良いと思うけど、そういうことはしないの? すみません、フォーカスが当たっているチェックボックスの色を プロパティで変えられるということを知りませんでした。 恐れ入りますが教えていただけますでしょうか? よろしくお願い致します。 (ミッキー) 2019/04/05(金) 10:50 ---- ボタン二つ追加して、次へ 前へとして こんなんでどうですか? Private defaultcolor As Long Private chkboxes() As Control 'CheckBox Private ibox As Long Private Sub UserForm_Initialize() Dim ctrl As Control ibox = -1 For Each ctrl In Me.Controls If TypeName(ctrl) = "CheckBox" Then defaultcolor = ctrl.ForeColor 'Exit For End If Next ctrl End Sub Private Sub CommandButton1_Click() '検索 Dim ctrl As Control ReDim chkboxes(0) ibox = -1 For Each ctrl In Me.Controls If TypeName(ctrl) = "CheckBox" Then If ctrl.Caption Like "*" & TextBox1.Value Then ibox = ibox + 1 ReDim Preserve chkboxes(ibox) Set chkboxes(ibox) = ctrl ctrl.ForeColor = vbRed Else ctrl.ForeColor = defaultcolor End If End If Next ctrl If ibox >= 0 Then chkboxes(0).SetFocus End Sub Private Sub CommandButton2_Click() '次のチェックボックスへ If ibox >= 0 Then ibox = IIf(UBound(chkboxes) = ibox, 0, ibox + 1) chkboxes(ibox).SetFocus End If End Sub Private Sub CommandButton3_Click() '前のチェックボックスへ If ibox >= 0 Then ibox = IIf(LBound(chkboxes) = ibox, UBound(chkboxes), ibox - 1) chkboxes(ibox).SetFocus End If End Sub 12:02差し替え (稲葉) 2019/04/05(金) 11:45 ---- 稲葉様 私がやりたいことが完璧に再現されました!! 本当にありがとうございます!! (ミッキー) 2019/04/05(金) 13:04 ...
https://www.excel.studio-kazu.jp/wiki/kazuwiki/201904/20190404225517.txt - [detail] - similar
PREV NEXT
Powered by Hyper Estraier 1.4.13, with 97050 documents and 608253 words.

訪問者:カウンタValid HTML 4.01 Transitional