在工作表中输入一个字符,必须确认(返回/输入)

时间:2017-10-25 07:41:05

标签: excel vba events enter confirm

我有一个工作表,用户必须在单元格中输入一个字符,我希望单元格接受新值,而不必按RETURN(或ENTER)并保持在同一个单元格中。

enter status in one cell without confirmation

我怎样才能做到这一点?

Grtz BartH

1 个答案:

答案 0 :(得分:0)

行, 寻找WinAPI我找到了一个合适的解决方案:

在Workbook_Open和Sheet_Activate中,我使用了Application.OnKey过程来捕获我的键,如:

Private Sub Workbook_Open()
     Application.OnKey ("1"), "testOne"
     'Here other keys
End Sub

Private Sub Worksheet_Activate()
     Application.OnKey ("1"), "testOne"
     'Here other keys
End Sub

而标准模块中的以下程序会照顾我需要的内容:

Sub testOne()
    ActiveCell.Value = 1
End Sub
'And Sub testTwo() etc.

(无论如何,我都不需要在其他单元格中输入值。“

确保将OnKey的版本放在Workbook_BeforeClose和Sheet_Deactive中:

Private Sub Workbook_BeforeClose(Cancel As Boolean)
     Application.OnKey ("1")
     'Here other keys
End Sub

Private Sub Worksheet_Deactivate()
     Application.OnKey ("1")
     'Here other keys
End Sub

也许不是最先进的解决方案,但它可以满足我的需求。

Grtz BartH