无法调用宏

时间:2016-09-07 23:37:44

标签: excel vba excel-vba

我使用的是Excel 2010,但我无法调用宏。我有三个工作表,一个显示我的图表(工作表1),其中有一个动态图表,一个原始数据输入工作表(工作表2),最后一个工作表,数据通过公式从原始数据格式化(表3)。

在表中插入新行的宏如下:

Sub SBTrend()
'
' SBTrend Macro
'

'
    Sheets("Sheet 1").Select
    Selection.ListObject.ListRows.Add AlwaysInsert:=True
    Range("BA10").Select
End Sub

我必须在Sheet 3中调用宏的代码如下:

Private Sub Worksheet_Calculate()
Static OldVal As Variant
If Range("A9").Value <> OldVal Then
    OldVal = Range("A9").Value
    Call SBTrend
End If
End Sub

但是,我总是遇到错误“运行时错误'91':对象变量或未设置块变量。”当我调试时,这一行会突出显示:

Selection.ListObject.ListRows.Add AlwaysInsert:=True

我非常感谢能得到的任何和所有帮助。谢谢大家。

1 个答案:

答案 0 :(得分:2)

您需要引用{{ Form::hidden('user_id', auth()->user()->id ) }} 集合。

如果工作表上只有一个表,您可以通过它的索引引用该表

ListObjects

如果有多个,您应该通过它的名称

来引用该表
With Sheets("Sheet 1")
    .Select
    .ListObjects(1).ListRows.Add AlwaysInsert:=True
End With
Range("BA10").Select