在用户表单中点击提交即可填写下一行数据

问题描述 投票:0回答:1

我创建了一个用户表单。

如果我单击“提交”,我会选择下一个单元格。当我再次运行用户表单时,数据会像以前一样粘贴到相同的单元格中。

这是用户表单上“提交”命令的 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

当我按下提交时,我需要转到下一行并粘贴用户表单中的所有数据。

excel vba range row userform
1个回答
0
投票

请尝试此代码。按照您呈现数据的方式,列(从 A 到 E)看起来具有相同的行数。如果没有,则在每列填充数据之前必须计算

lastRow

Private Sub CommandButton2_Click()
  Dim sh As workseet, lastRow As Long
  Set sh = Sheets("Test") 'it would be better to fully define 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
最新问题
© www.soinside.com 2019 - 2024. All rights reserved.