我一直在寻找无处不在的问题的答案,要么我一直无法找到一个或我不明白我找到的答案。在Excel中添加一行到Excel中使用VB
我在Excel 2013中有一个工作簿。我正在使用VBA将一些下拉列表和表格添加到工作簿中,以便于填写。
我有一个用户表单,有一些数据输入字段,当你点击“添加”时,它将信息添加到表格的最后一行。
这是用户表单的代码;
Private Sub Add_Click()
Dim the_sheet As Worksheet
Dim table_list_object As ListObject
Dim table_object_row As ListRow
Set the_sheet = Sheets("Structural")
Set table_list_object = the_sheet.ListObjects(1)
Set table_object_row = table_list_object.ListRows.Add
table_object_row.Range(1, 1).Value = "Deck"
last_row_with_data = the_sheet.Range("A" & Rows.Count).End(xlUp).Row
the_sheet.Range("B" & last_row_with_data) = TextBox3
the_sheet.Range("C" & last_row_with_data) = TextBox4
the_sheet.Range("D" & last_row_with_data) = ComboBox1
Unload Me
End Sub
再次,这工作完美,并做到我需要它做。
我有另一个用户表单,我需要输入数据,并让它把数据放在表中的一行。但我不知道如何将数据添加到除最后一行之外的任何内容。
现在我有一个宏,当你点击“添加”按钮时运行;
Sub AddRow6Sheet3()
Application.ScreenUpdating = False
Rows("7:7").Insert Shift:=xlDown
Application.ScreenUpdating = True
End Sub
这很适合在第7行添加一行,这是我需要数据去的地方。但是我需要这些数据才能获得输入到创建的新行7中。这种形式将始终输入到第7行。
但我也想知道如何将数据添加到任何行。因为稍后在工作簿中,我将遇到类似的问题。
[此引用可能会派上用场(http://www.thespreadsheetguru.com/blog/2014/6/20/the-vba-引导到的ListObject-Excel的表) –