Excel VBA错误424调用子

我已经search了互联网,但我似乎无法find我的问题的答案,根据我看到的答案我应该没有问题。

很多代码是sl since的,因为这是一个过去曾经工作的复制面食。 意图是function后清理。

Im从我的用户表单传递7个string到一个子,但我不断收到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是一个伟大的

 Dim Nextrow As Variant 

您将Nextrow分配给一个数字值。 Nextrow现在实际上是一个数字。

 Nextrow = Sheets("Database").Range("A65536").End(xlUp).Row + 1 

由于数字值没有Text属性,所以会引发424错误。

 Sheets("Database").Range("A" & Nextrow) = Nextrow.Text