我刚刚创建了用户表单,但正在努力获取下一行的数据。如果单击提交,我将设法选择下一个单元格,然后再次运行用户窗体时,所有数据将像以前一样粘贴到相同的单元格中。这是用户表单上“提交”命令的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