因此,我目前正在尝试让用户输入一些信息,并根据下拉列表中的值选择特定范围内的信息。例如,我选择了星期一,因此我希望信息在范围A1:A12中进行,但是如果他们选择了星期二,那么请转到范围G1:G12。另外,如果范围已经满了数据,我想让它告诉用户它已满。不要有任何示例代码,但这里是一个伪代码示例Excel VBA用户表单输入到工作表内的特定范围
Private Sub cbSubmit_Click()
range("A2").Select
ActiveCell.End(xlDown).Select
lastrow = ActiveCell.Row
MsgBox lastrow
If ComboBox1.Value = "Monday" Then
Cells(lastrow + 1, 1).Value = tb1.Text
Cells(lastrow + 1, 2).Value = tb2.Text
End If
If ComboBox1.Value = "Tuesday" Then
range("G2").Select
ActiveCell.End(xlDown).Select
lastrow2 = ActiveCell.Row
Cells(lastrow2 + 1, 1).Value = tb1.Text
Cells(lastrow2 + 1, 2).Value = tb2.Text
End If
End Sub
而且,在上面的代码,有没有更好的方式来发现是空白的范围内最后一个单元格?只有在范围内已有数据的情况下,此功能才有效,但并非总是如此。 并且还要检查某种CountA或某物,以查看该范围是否已满数据。提前致谢!
你有什么问题? – user1274820
做检查,看看细胞的范围是否已经满了。 – OysterMaker
'如果单元格(X + 1,Y + 1)<> vbNullString那么''单元格中有数据。它也可能是一个空格,所以它可能值得使用'Trim(Cells(X + 1,Y + 1))',但这取决于你我想 - 无论空格=数据或者你会找到那个和什么依赖于的因素。 – user1274820