是否可以完全禁用搜索功能?
我设法禁用的唯一搜索工具是功能区。但由于我使用子表单,用户可以使用导航栏上的搜索框,或者他可以按 Ctrl + F 开始搜索。
数据表有60,000行,52列。当我开始搜索时,它需要永远。
我可以禁用导航栏,但是如何阻止用户使用 Ctrl + F 打开搜索对话框?
答案 0 :(得分:1)
在相关表单上,将KeyPreview
属性设置为Yes
,这会导致按下所有按键,以便在Ms Ms处理之前将其发送到Form_KeyDown
事件。
如果您捕获 CTRL + F 组合键并自行处理(如下例所示),它将无法打开搜索对话框。
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
Select Case KeyCode
Case vbKeyF
If (Shift And CTRL_MASK) Then
MsgBox "No search allowed!", vbCritical
End If
End Select
End Sub
答案 1 :(得分:0)
如果要禁用所有表单的搜索功能,请在名为Autokeys的宏中插入SubMacro,并使用^ F和^ H submacro名称捕获CTRL + F(搜索)和CTRL + H(搜索和替换)。 Action定义了一个简单的嘟嘟声,甚至没有。如果您还想避免过滤,请不要忘记在表单属性中设置Shortcut Menu = No
。