excel:运行时运行时错误9
我有一个名为BASE_GERAL_FUNCIONARIOS的工作表,里面有五列信息,我想用下面的代码创build一个表单。 我可以input所有的信息,并将这些代码与“插入”button相关联:
Private Sub inserirInfo_Click() Dim LastRow As Range Dim ExpenseTable As ListObject 'Add row to bottom of BASE_GERAL_FUNCIONARIOS table Worksheets("BASE_GERAL_FUNCIONARIOS").Activate.ListObjects("BASE_GERAL_FUNCIONARIOS").ListRows.Add 'Enter data from form into our new row Set ExpenseTable = Worksheets("BASE_GERAL_FUNCIONARIOS").Activate.ListObjects("BASE_GERAL_FUNCIONARIOS") Set LastRow = ExpenseTable.ListRows(ExpenseTable.ListRows.Count).Range With LastRow .Cells(1, 1) = cmbMatricula.Value .Cells(1, 2) = cmbNome.Value .Cells(1, 3) = cmbFuncao.Value .Cells(1, 4) = txtAlocacao.Value .Cells(1, 5) = txtDataIni.Value .Cells(1, 6) = txtDataFim.Value End With End Sub
我的表格放在与填写信息的表格不同的表格中。 无论如何,当我运行代码时,我不断收到运行时错误9 ,突出显示了这部分代码:
Worksheets("BASE_GERAL_FUNCIONARIOS").Activate.ListObjects("BASE_GERAL_FUNCIONARIOS").ListRows.Add
我正在考虑使用“ActivateSheet”而不是工作表(“”)。激活,但我真的不知道如何解决这个问题。 任何人都可以帮忙
错误9意味着下标超出范围,即您所指的对象不存在于工作簿/工作表中。
确保工作簿中有一张名为“BASE_GERAL_FUNCIONARIOS”的工作表,并在该工作表上有一个名为“BASE_GERAL_FUNCIONARIOS”的excel表。
除此之外,正确的语法将是这样的… Worksheets("BASE_GERAL_FUNCIONARIOS").ListObjects("BASE_GERAL_FUNCIONARIOS").ListRows.Add
第二行也是这样的
Set ExpenseTable = Worksheets("BASE_GERAL_FUNCIONARIOS").ListObjects("BASE_GERAL_FUNCIONARIOS")