我正在Excel 2013中创建一个用户窗体,以使在工作场所中将数据轻松输入到清单文件中。用户表格 (Userform and Code Picture)将运行,我可以在清单文件中输入多个新项目(忽略尚未更新的更新现有输入按钮),但是一旦我关闭表单,再次打开它会导致错误 “运行时错误'-2147417848(80010108)'范围'的方法'值'失败” 出现,并且每次尝试调试时Debug都会突出显示一个不同的对象。
Private Sub New_Data_Click()
Dim lRow As Long
Dim lPart As Long
Dim ws As Worksheet
Set ws = Worksheets("Worksheet")
lRow = ws.Cells.Find(What:"*", SearchOrder:=xlRows,
SearchDirection:=xlPrevious, LookIn=xlValues).Row + 1
With ws
.Cells(lRow, 1).Value = Me.EnterChemical.Value
.Cells(lRow, 2).Value = Me.EnterNotes.Value
.Cells(lRow, 3).Value = Me.EnterLot.Value
.Cells(lRow, 4).Value = Me.EnterItem.Value
.Cells(lRow, 5).Value = Me.SpinButton1.Value
.Cells(lRow, 6).Value = Me.EnterManf.Value
.Cells(lRow, 7).Value = Me.EnterLoc.Value
.Cells(lRow, 8).Value = Me.EnterTare.Value
.Cells(lRow, 9).Value = Me.EnterGross.Value
.Cells(lRow, 11).Value = Me.EnterUnit.Value
.Cells(lRow, 12).Value = Me.EnterExp.Value
.Cells(lRow, 16).Value = Date
If Me.Expire.Value = True Then
.Cells(lRow, 13).Value = "Expire"
ElseIf Me.Retest.Value = True Then
.Cells(lRow, 13).Value = "Retest"
EndIf
If Me.API.Value = True Then
.Cells(lRow, 1).Value = "Yes"
EndIf
EndWith
EndSub
Private Sub Closefrm.Click()
Unload Me
End Sub
Private Sub SpinButton1_Change()
Reference_no.Caption = SpinButton1.Value
所以这一次都有效,但是我不知道为什么第二次失败了。我需要在按钮上使用其他关闭功能,还是我完全丢失了某些东西。