我目前在 A、B、C、D、E 列中有一个公式。我目前有一个来自 F21:AB5000 的表格。
我需要我的 VBA 代码将用户窗体中的数据插入到下一个可用行。
有什么帮助吗?我目前需要将数据输入到新工作表中,然后使用该数据指定到原始工作表中,有时数据格式错误。
答案1
此 VBA 宏有助于在表中的下一个空行中输入新记录。
Private Sub CommandButton1_Click()
Dim rng As Range
Set rng = ActiveSheet.ListObjects("Table1").Range
Dim LastRow As Long
LastRow = rng.Find(What:="*", _
After:=rng.Cells(1), _
Lookat:=xlPart, _
LookIn:=xlFormulas, _
SearchOrder:=xlByRows, _
SearchDirection:=xlPrevious, _
MatchCase:=False).Row
rng.Parent.Cells(LastRow + 1, 1).Value = TextBox1.Value
rng.Parent.Cells(LastRow + 1, 2).Value = TextBox2.Value
End Sub
注意:
FIND 方法已用于搜索表中的下一个空白行以进行数据输入。
此可选的 VBA 代码可用于初始化用户的表单控件以供下次输入。
Private Sub CommandButton2_Click()
Dim ctl As Control
For Each ctl In Me.Controls
If TypeName(ctl) = "TextBox" Then
ctl.Value = ""
End If
Next ctl
End Sub
注意:
- 可以修改命令行以用于其他控件,例如 ComboBox/ListBox。
喜欢,
If TypeName(ctl) = "TextBox" Or TypeName(ctl) = "ComboBox" Then