次のコードを使用して、オートフィルター処理されたデータの奇数行 1,400 行をフィルター処理する ActiveX Textbox をセットアップしました。
Private Sub TextBox3_Change()
Application.Calculation = xlManual
Application.ScreenUpdating = False
Selection.AutoFilter Field:=5, Criteria1:="*" & TextBox3.Value & "*", Operator:=xlOr
On Error Resume Next
If Range("B7:B1307").SpecialCells(xlCellTypeVisible).Count = 0 Then
Call ClearAllFilters
ActiveSheet.Range("B7:B1307").AutoFilter Field:=5, Criteria1:="<>"
Selection.AutoFilter Field:=6, Criteria1:="*" & TextBox3.Value & "*", Operator:=xlOr
End If
Application.ScreenUpdating = True
Application.Calculation = xlAutomatic
End Sub
問題は、キーストロークごとに計算が行われることです。キーストロークごとに最大 20 秒かかります。
ユーザーがEnterキーを押す(望ましい!)か、テキストボックスからフォーカスが奪われるまで、何もしないようにする方法はありますか?
上記のコードが正しく表示されない場合は、申し訳ありません。ここでは問題ないように見えますが、プレビューは少しおかしく見えます!
ありがとう、マット