【发布时间】:2021-12-30 04:57:31
【问题描述】:
我有 2 个用户窗体按预期工作,除了当我关闭 form2 并重新填写 form1 并按“添加”时,它不会让我回到 form2 的开头。它显示了我之前的最后一部分。
当我按下 form2 上的关闭按钮时,我希望它在下次单击 Add on form1 时重新加载。
'Public because we want it to be active for all macros.
'Aim to stopped a loop when user click on a button
Public stopped, Non As Boolean
Public Sub closebut_Click()
Load Addform
Addform.Hide
End Sub
Private Sub savebut_Click()
Dim ws As Worksheet
Dim newrow As ListRow
Set ws = ThisWorkbook.Worksheets("New Product")
Set tbl = ws.ListObjects("NewMat")
erow = ws.Cells(ws.Rows.Count, 1).End(xlUp).Offset(1, 0).Row
ws.Cells(erow, 1).Value = Me.EAN.Value
ws.Cells(erow, 2).Value = Me.MatCode.Value
ws.Cells(erow, 3).Value = Me.Des.Value
Do While stopped = True
Loop
Me.Label1.Visible = False
Me.Label2.Visible = False
Me.Label3.Visible = False
Me.Label4.Visible = True
Me.EAN.Visible = False
Me.MatCode.Visible = False
Me.Des.Visible = False
Me.closebut.Visible = True
Me.savebut.Visible = False
End Sub
Private Sub UserForm_initialize()
Do While stopped = True
Loop
Me.Label1.Visible = True
Me.Label2.Visible = True
Me.Label3.Visible = True
Me.Label4.Visible = False
Me.EAN.Visible = True
Me.MatCode.Visible = True
Me.Des.Visible = True
Me.closebut.Visible = False
Me.savebut.Visible = True
End Sub
【问题讨论】:
-
你的问题不是很清楚,在使用的表格识别方面。提到的两种形式中的哪一种是
Addform?表格 2?那么,savebut_Click()代码存在于哪种形式上?是上面提到的“添加”吗?如果不是,既然您告诉我们“我希望它在下次单击 Add on form1 时重新加载”,您应该显示您认为应该“显示”所需表单的代码的哪一部分...... -
嗨,对不起,Addform 是 form2 一个代码被放入“Scan”,它是 form1,如果它没有被识别,那么用户将按下一个按钮添加打开“Addform”的代码,代码复制进入这里并输入更多细节。然后用户按下“Savebut”,只显示“label4”和“closebut”。单击关闭时,“addform”将被隐藏并显示“scan”表单。下次在第一个循环之后按下“添加”按钮而不是在开始时加载“addform”以获取额外的细节,它在最后加载并且只显示“label4”和“closebut”。
-
我需要'''Public Sub closebut_Click() Load Addform Addform.Hide End Sub''' 基本上说刷新“addform”到开头并隐藏,以便下次加载“ addform”在开头
-
我听不懂,对不起...很多话与我的澄清问题无关。 如果无法识别,则用户将按下按钮添加打开“Addform”的代码是什么意思?什么是“认可”?如何“添加代码”?您的应用程序是否编写代码?它是一个密码,因为你不向我们展示它吗?还是它在问题的某个地方而我错过了它?如果是这样,请指出正确的方向。
-
仍然有点困惑,但是在 form1 的
Add按钮中,尝试Unload AddForm: AddForm.Show,它应该重新初始化AddForm的新实例。不要尝试在关闭按钮中刷新AddForm,只需将其隐藏即可。