VBA userform文本框为不同的文本框输入两次调用的事件

时间:2015-08-18 08:27:58

标签: vba excel-vba textbox userform excel

我有一个excel文件,用户使用userform来处理数据 userform设置为帧内框架和内框架内的文本框。

我无法就此问题找到任何类似的问题,所以这里有:

我遇到了以下问题:由于焦点首先在框架中使用Tabindex 1而不是用户选择的文本框(在一个框架内有6个文本框可以加载数据) 。
用户可以选择6个文本框中的任何一个来更改数据,因此永远不会确定选择哪个文本框的确切顺序。

请参阅下面的用户表单布局中的部件图片。

Frame within frame with textbox

这会产生的问题是,当用户想要更改文本框中的数据时,它会被清空以获取正确的数据。

_enter()事件代码:

Private Sub Art1Aan1_Enter()
    Art1Aan1.Text = ""
End Sub
  • 无论如何都要阻止这种情况发生?
  • 或者我是否必须在enter事件中构建安全检查以检查用户是否真正选择了该文本框?

如果选项2那么我可以弄明白:)

修改/更新

初始化代码:

Private Sub UserForm_Initialize()
With Protocol.Product
   .AddItem "ID-1"
   .AddItem "ID-3"
   .AddItem "stans+CMI"
   .AddItem "Knip en Plak"
   .AddItem "Test"
End With

With Protocol.Product1
   .AddItem "ID-1"
   .AddItem "ID-3"
   .AddItem "stans+CMI"
   .AddItem "Knip en Plak"
   .AddItem "Test"
End With

With Protocol.Product2
   .AddItem "ID-1"
   .AddItem "ID-3"
   .AddItem "stans+CMI"
   .AddItem "Knip en Plak"
   .AddItem "Test"
End With
OrderKeuze_Lijst
End Sub

Userform启动代码(在带有4个按钮的简单概述用户窗体中调用它):

Private Sub Protbutton_Click()
    Protocol.Show
End Sub

更新

在此File,内部数据被清除。

0 个答案:

没有答案