所以我有一个数据库脚本,我正在使用excel UserForm为我的医院制作,但是由于某些原因,当我已经添加了一个病人之后单击“添加病人”按钮时,它不会进入下一个空行来输入一个新病人。除非我关闭UserForm并重新打开它,否则它将停留在同一行上,然后它将新数据输入到下一行,但仍不会更新以转到下一行以添加新数据。下面是添加患者按钮的代码,也是指向我的excel文档的链接。我不知道自己想念的是什么,也许我只需要再看看另一只眼睛。
Private Sub cmdAddPatient_Click()
With Me
'check the caption
If .cmdAddPatient.Caption = "Add Patient" Then
'rData has been defined so to get the row to add data we just need to count the Rows in that Range & add 1
lRw = rData.Rows.Count + 1
End If
'because we have declared rData as a Range we can actually treat it as we would aA WORKSHHEET, _
So, rData.Cells(1,1) refers to the first cell in the Range, i.e. A5
For iX = 1 To iCol
rData.Cells(lRw, iX).Value = Me("txt" & iX).Value
Me("txt" & iX).Value = Empty
Next iX
'autofit the columns of Data
rData.Columns.AutoFit
'update data range
Set rData = Sheet1.Range("A5").CurrentRegion
'Set rData = Sheet1.Cells(lOffset, 1).CurrentRegion
.lstInfo.Clear
.lstInfo.List = Sheet1.Range("A5").CurrentRegion.Offset(1).Value
.txt1.Value = WorksheetFunction.Max(rData.Columns(1)) + 1
.Hide
.cmdAddPatient.Caption = "Add Data"
.Show
End With
End Sub
我的建议是,不要在范围内找到最后一行,而是根据A列在工作表中找到最后一行。然后使用它来输入工作表的最后一行。