如何在vba中在特定表的下一个空行中插入数据

如何在vba中在特定表的下一个空行中插入数据

我目前在 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

相关内容