VBA无模式forms停止function键

我想在我的Excel程序中有我自己的帮助文件。

在里面

Private Sub Workbook_Open() 

我有

 Application.OnKey "{F1}", "Help" 

当我在Excel工作表,但我的应用程序是基于全屏幕主要用户窗体,显示无模式。

当用户窗体可见时,以某种方式阻止F1键,macros不会触发。

我认为无模式表单不会阻止代码执行。

任何提示如何使这项工作?

您需要在UserForm本身上捕获keyDown事件。 当用户窗体获得焦点时,无论按哪个键,它都会转到用户窗体。

 '/UserForm1 is a sample name. Private Sub UserForm_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer) If KeyCode = 112 Then '/ F1 Call Help End If End Sub