【发布时间】:2019-02-05 21:30:45
【问题描述】:
我有一个用户窗体,它允许用户将数据输入到工作表中。
根据2个ComboBox选择和最后0001为每行数据创建一个序列号。
例如,MAPR0001,其中MA 来自一个组合框,PR 来自另一个组合框,最后添加了0001,并随着MA 和PR 的另一个选择而递增。 (MAPR0002)
然后我有第二个用户窗体,应该允许我更新我的数据库。
从组合框中选择序列号后,第二个用户窗体将数据从工作表拉回一些文本框。
到这里一切正常。
但我无法将数据添加到特定序列号。
我的命令按钮代码:
Private sub Commandbuttonclick ()
If Me.ComboBox1.Value = "" Then
MsgBox "Request No. Can Not be Blank", vbExclamation, "Request No."
Exit Sub
End If
requestno = Me.ComboBox1.Value
Sheets("DASHBOARD").Select
Dim rowselect As Double
rowselect = Me.combobox1.Value
rowselect = rowselect + 1
Rows(rowselect).Select
Cells(rowselect, 2) = Me.TextBox1.Value
Cells(rowselect, 3) = Me.TextBox2.Value
Cells(rowselect, 4) = Me.TextBox3.Value
【问题讨论】:
-
在我看来很好,我只是回答错误的人;)
-
我觉得不好看 ;) ① Avoid using Select in Excel VBA ②
Dim rowselect As Double必须是Dim rowselect As Long -
使用WorksheetFunction.Match method 查找您要更新的序列号。
Match返回您可以使用而不是rowselect来写入数据的行号。