确保数据填充到下一个可用行-VBA中的代码

时间:2019-06-21 23:40:48

标签: excel vba

我试图编写代码以在选中复选框时在下一个可用行中输入值1,而在未选中时输入值0。

Private Sub CheckBox2_Click()
If CheckBox2.Value = True Then
Set LastRow = Sheet9.Range("a70000").End(xlUp)
LastRow.Offset(1, 2).Value = 1
End If

If CheckBox2.Value = False Then
  LastRow.Offset(1, 2).Value = 0
End If
End Sub


Private Sub enterMDGfunction_Click()

Dim LastRow As Object

Set LastRow = Sheet9.Range("a70000").End(xlUp)




    Unload Me
    DataEntrySystemHomepage.Show
  End Sub

当前它不会进入下一个可用行。一项输入后,数据表停止填充。与我的卸载表单代码有关吗?

1 个答案:

答案 0 :(得分:0)

Set LastRow = Sheet9.Range("a70000").End(xlUp)
LastRow.Offset(1, 2).Value = 1

这将在Col C中的LastRow的下一行输入一个值,但是由于您从未在Col A中输入任何新内容,因此下次您获得LastRow时,它将再次返回该单元格中的相同单元格。像以前一样使用ColA。

要么在Col A中放一些东西,要么在Col C中执行end(xlup)

稍作修改后,它就更简单了:

Private Sub CheckBox2_Click()

    Sheet9.Range("C70000").End(xlUp).Offset(1, 0).Value = _
                                 IIf(CheckBox2.Value, 1, 0)

End Sub