单击用户表单中的提交以在下一行中填写数据
Click submit in userform to fill data in next row
我创建了一个用户表单。
如果我点击提交,我会选择下一个单元格。当我 运行 用户表单再次将数据粘贴到与以前相同的单元格中时。
这是用户表单上“提交”命令的VBA部分:
Private Sub CommandButton2_Click()
Sheets("Test").Range("A2").value = TextBox3.value
Sheets("Test").Range("B2").value = TextBox4.Text
Sheets("Test").Range("C2").value = TextBox5.Text
Sheets("Test").Range("D2").value = TextBox6.Text
Sheets("Test").Range("E2").value = ComboBox1.Text
Unload Me
End Sub
我需要在按下提交时转到下一行并粘贴用户表单中的所有数据。
请试试这个代码。在您呈现数据的方式中,看起来列(从 A 到 E)具有相同的行数。如果不是,则必须先计算lastRow
,然后再向每列填充数据:
Private Sub CommandButton2_Click()
Dim sh As workseet, lastRow As Long
Set sh = Sheets("Test") 'it would be better to fully difine it (workbook included)
lastRow = sh.Range("A" & Rows.count).End(xlUp).Row + 1
sh.Range("A" & lastRow).value = TextBox3.value
sh.Range("B" & lastRow).value = TextBox4.text
sh.Range("C" & lastRow).value = TextBox5.text
sh.Range("D" & lastRow).value = TextBox6.text
sh.Range("E" & lastRow).value = ComboBox1.value
Unload Me
End Sub
我创建了一个用户表单。
如果我点击提交,我会选择下一个单元格。当我 运行 用户表单再次将数据粘贴到与以前相同的单元格中时。
这是用户表单上“提交”命令的VBA部分:
Private Sub CommandButton2_Click()
Sheets("Test").Range("A2").value = TextBox3.value
Sheets("Test").Range("B2").value = TextBox4.Text
Sheets("Test").Range("C2").value = TextBox5.Text
Sheets("Test").Range("D2").value = TextBox6.Text
Sheets("Test").Range("E2").value = ComboBox1.Text
Unload Me
End Sub
我需要在按下提交时转到下一行并粘贴用户表单中的所有数据。
请试试这个代码。在您呈现数据的方式中,看起来列(从 A 到 E)具有相同的行数。如果不是,则必须先计算lastRow
,然后再向每列填充数据:
Private Sub CommandButton2_Click()
Dim sh As workseet, lastRow As Long
Set sh = Sheets("Test") 'it would be better to fully difine it (workbook included)
lastRow = sh.Range("A" & Rows.count).End(xlUp).Row + 1
sh.Range("A" & lastRow).value = TextBox3.value
sh.Range("B" & lastRow).value = TextBox4.text
sh.Range("C" & lastRow).value = TextBox5.text
sh.Range("D" & lastRow).value = TextBox6.text
sh.Range("E" & lastRow).value = ComboBox1.value
Unload Me
End Sub