【发布时间】:2020-08-05 13:45:20
【问题描述】:
我想将大约 10 个文本框用户表单中的数据输入 Excel 工作表,仅用于已填写的文本框。
我目前有从用户表单填充单元格的代码,它可以工作,但如果用户没有填写其余的文本框,它仍然会输入这些空白数据条目。
当前状态:
未来状态: 仅填充了 2 行...
我如何告诉代码说明文本框 1-10 中的任何字段是否为空不输入...仅输入在此 RMA# 和客户名称下填写的文本框??
谢谢!
这是目前的代码(感谢之前问题的帮助):
Private Sub EnterButton_Click()
If TB1.Value = "" Then
Else
Worksheets("RMA Tracker").Activate
Dim i As Long
For i = 1 To 10
Dim lastrow As Long ' should put a data type with dim statements
lastrow = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row
lastrow = lastrow + 1
Cells(lastrow, 1) = RecForm.Controls("RMATB").Value
Cells(lastrow, 2) = RecForm.Controls("CustCB").Value
Cells(lastrow, 3) = RecForm.Controls("TB" & i).Value
Cells(lastrow, 4) = RecForm.Controls("SNTB" & i).Value
Cells(lastrow, 5) = RecForm.Controls("ReceiveTB").Value
Next i
End If
ActiveWorkbook.Save
Call resetform
End Sub
Sub resetform()
RMATB.Value = ""
CustCB.Value = ""
TB1.Value = ""
SNTB1.Value = ""
TB2.Value = ""
SNTB2.Value = ""
TB3.Value = ""
SNTB3.Value = ""
TB4.Value = ""
SNTB4.Value = ""
TB5.Value = ""
SNTB5.Value = ""
TB6.Value = ""
SNTB6.Value = ""
TB7.Value = ""
SNTB7.Value = ""
TB8.Value = ""
SNTB8.Value = ""
TB9.Value = ""
SNTB9.Value = ""
TB10.Value = ""
SNTB10.Value = ""
ReceiveTB = ""
'sets focus on that first textbox again
RecForm.RMATB.SetFocus
End Sub
【问题讨论】: