我已经搜寻了互联网,但是根据我看到的答案,我似乎没有问题的答案。
许多代码是草率的,因为它是过去工作中的复制面食。目的是在功能正常后进行清理。
我从用户表单中将7个字符串传递给一个子,但我不断收到424错误。
从用户表单中:
Sub CommandButton1_Click()
Dim Bericht As Variant
Dim RuilingOfVermissing As String
Dim Benaming As String
Dim NSN As String
Dim Aantal As String
Dim Bijzonderheden As String
Dim DatumIn As String
Dim Naam As String
'Check verplichte velden
If OptionButton1.Value = False And OptionButton2.Value = False Then
Bericht = MsgBox("Selecteer Ruiling of Vermissing", vbOKOnly)
GoTo ErrorExit
ElseIf OptionButton1.Value = True And OptionButton2.Value = True Then
Bericht = MsgBox("Selecteer Ruiling OF Vermissing, niet allebei", vbOKOnly)
GoTo ErrorExit
ElseIf OptionButton1.Value = True Then
RuilingOfVermissing = "Ruiling"
ElseIf OptionButton2.Value = True Then
RuilingOfVermissing = "Vermissing"
End If
If Len(TextBox2 & vbNullString) = 0 Then
Bericht = MsgBox("Vul een benaming in", vbOKOnly)
GoTo ErrorExit
ElseIf Len(TextBox3 & vbNullString) = 0 Then
Bericht = MsgBox("Vul een NSN in", vbOKOnly)
GoTo ErrorExit
ElseIf Len(TextBox4 & vbNullString) = 0 Then
Bericht = MsgBox("Vul een aantal in", vbOKOnly)
GoTo ErrorExit
ElseIf Len(TextBox5 & vbNullString) = 0 Then
Bericht = MsgBox("Vul een 'datum in' in", vbOKOnly)
GoTo ErrorExit
ElseIf Len(TextBox9 & vbNullString) = 0 Then
Bericht = MsgBox("Vul je naam in", vbOKOnly)
GoTo ErrorExit
End If
'Niet verplicht veld ("bijzonderheden") aanpassen naar spatie om Null te voorkomen
If Len(TextBox7 & vbNullString) = 0 Then
TextBox7.Text = "-"
End If
Benaming = TextBox2.Text
NSN = TextBox3.Text
Aantal = TextBox4.Text
Bijzonderheden = TextBox7.Text
DatumIn = TextBox5.Text
Naam = TextBox9.Text
RuilVernis.schrijven RuilingOfVermissing, Benaming, NSN, Aantal, Bijzonderheden, DatumIn, Naam
ErrorExit:
Exit Sub
End Sub
从被叫子:
Sub schrijven(Optional RuilingOfVermissing As String, _
Optional Benaming As String, _
Optional NSN As String, _
Optional Aantal As String, _
Optional Bijzonderheden As String, _
Optional DatumIn As String, _
Optional Naam As String)
Dim Nextrow As Variant
Sheets("Database").Select
Nextrow = Sheets("Database").Range("A65536").End(xlUp).Row + 1
Sheets("Database").Range("A" & Nextrow) = Nextrow.Text
Sheets("Database").Range("B" & Nextrow) = RuilingOfVermissing
Sheets("Database").Range("C" & Nextrow) = Benaming
Sheets("Database").Range("D" & Nextrow) = NSN
Sheets("Database").Range("E" & Nextrow) = Aantal
Sheets("Database").Range("F" & Nextrow) = Bijzonderheden
Sheets("Database").Range("G" & Nextrow) = DatumIn
Sheets("Database").Range("I" & Nextrow) = Naam
Sheets("Start").Select
Unload UserForm1
UserForm1.Show
Save
End Sub
当我运行424点时,将指向:
RuilVernis.schrijven RuilingOfVermissing, Benaming, NSN, Aantal, Bijzonderheden, DatumIn, Naam'
我究竟做错了什么?
提前谢谢了。
在这里,您声明Nextrow
为vriant
Dim Nextrow As Variant
您分配Nextrow
一个数值。Nextrow
现在实际上是一个数字。
Nextrow = Sheets("Database").Range("A65536").End(xlUp).Row + 1
由于数值没有Text
属性,因此会引发424错误。
Sheets("Database").Range("A" & Nextrow) = Nextrow.Text
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句