Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vba MatchCase:=False)。行和;运行时错误91“;_Vba_Excel_Commandbutton - Fatal编程技术网

Vba MatchCase:=False)。行和;运行时错误91“;

Vba MatchCase:=False)。行和;运行时错误91“;,vba,excel,commandbutton,Vba,Excel,Commandbutton,我想在commandbutton中输入一些文本和值,并将其填充到电子表格中。我的代码在这里: Private Sub CommandButton1_Click() Dim rng As Range Dim LastRow As Long Set rng = ActiveSheet.ListObjects("table1").Range LastRow = rng.Find(What:=” * ”, _ After:=rng.Cells(1), _ Lookat:=xlPa

我想在
commandbutton
中输入一些文本和值,并将其填充到电子表格中。我的代码在这里:

Private Sub CommandButton1_Click()

Dim rng As Range
Dim LastRow As Long

Set rng = ActiveSheet.ListObjects("table1").Range


LastRow = rng.Find(What:=” * ”, _
    After:=rng.Cells(1), _
    Lookat:=xlPart, _
    LookIn:=xlFormulas, _
    SearchOrder:=xlByRows, _
    SearchDirection:=xlPrevious, _
    MatchCase:=False).Row

    rng.Parent.Cells(LastRow + 1, 1).Value = TextBox1.Text
    rng.Parent.Cells(LastRow + 1, 2).Value = ComboBox1.Text
    rng.Parent.Cells(LastRow + 1, 3).Value = TextBox3.Value
    rng.Parent.Cells(LastRow + 1, 4).Value = TextBox4.Value
    rng.Parent.Cells(LastRow + 1, 5).Value = TextBox5.Value

End Sub

我一直在
matchcase:=false)行上遇到运行时错误91,我不知道为什么。多看一眼会很有帮助的

看起来您正在向现有表中添加一行(
ListObject
)。没有必要找到最后一行-您可以使用。如果未指定要添加行的位置,则该行将自动添加到底部

这简化了您试图做的事情

Private Sub CommandButton1_Click()
    Dim newRow As ListRow
    Dim tbl As ListObject
    Set tbl = ActiveSheet.ListObjects("table1")
    Set newRow = tbl.ListRows.Add

    With newRow
        .Range(1) = Textbox1.Text
        .Range(2) = ComboBox1.Text
        .Range(3) = TextBox3.Value
        .Range(4) = TextBox4.Value
        .Range(5) = TextBox5.Value
    End With
End Sub

由于您有一个
列表对象
,因此您可以使用在末尾添加一行。请原谅,我没有跟上您。有可能得到更多的解释吗?谢谢。噢,天哪……你说得对。我肯定是把事情复杂化了。非常感谢BigBen.:)