这似乎是一个简单的问题,但它非常令人沮丧。我在VBA中为一个电子表格编写了一些(相对简单的)宏,我想让它非常用户友好。
换句话说,我希望所有的宏都能通过按钮运行。但是,每当我尝试将按钮分配给宏时,我都会收到错误:
公式太复杂,无法分配给对象
即使我尝试将其分配给空子例程,也会发生这种情况。它起作用了,但仅限于我写的第一个宏。一旦我将其他子程序添加到模块中,我就不能再为宏指定新的按钮了。
这是我写的代码:
Sub Button1_Click()
selName = Range("C2").Value
div = Range("E2").Value
cost = Range("F2").Value
diff = div - cost
If diff < 0 Then
diff = 0
End If
Range("G2").Select
ActiveCell.FormulaR1C1 = diff
x = Range("A2").Value + 1
Worksheets("VIP_TEMPLATE.PIVOT").Select
Range("J" & x).Select
ActiveCell.FormulaR1C1 = diff
Worksheets("CALCULATE").Select
Range("F2").Select
ActiveCell.ClearContents
End Sub
我在模块中有另一个子程序,我认为这可能导致问题?我认为这是因为当我将数据复制粘贴到新工作表中时,我可以为例程指定一个按钮。我不认为它与我的文件路径有任何关系,因为我不使用任何(我认为)有问题的字符。
答案 0 :(得分:1)
我发现了这个问题。事实证明,我确实在我的文件路径中有一个括号(埋在那里)。