VBA工作表(名称).Calculate在Excel中无法正常工作

时间:2018-04-24 04:26:30

标签: excel vba excel-vba

我有一个文本框,它接受用户输入,该输入由VBA中的许多自定义函数引用。我希望每次更改文本框中的输入时重新计算函数。文本框输入表示1:24格式的比例,该比例在函数中使用并转换为小数部分。

代码最初运行良好但在我重新打开时停止工作。如果我在计算后添加一个消息框。使用SelectionChange作为工作表时遇到了同样的问题。思考?这是我使用的代码。

此外,我正在使用格式化的表格,这是未更新的内容。

Private Sub ScaleBox_Change()
    Worksheets(ActiveSheet.Name).Calculate
End Sub

2 个答案:

答案 0 :(得分:0)

尝试类似:

Private Sub ScaleBox_Change()
    Applicatin.CalculateFull '<<< edit
End Sub

如果没有这样做,那么发布你的公式就会有所帮助。

答案 1 :(得分:0)

您的事件处理程序ScaleBox_Change不会对工作表进行任何更改,因此任何计算都将处理旧数据。

要解决此问题,请将结果放在ScaleBox中,并将其放在工作表中的适当位置(并以正确的格式显示您要执行的操作)。然后做计算例程。