Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/16.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
Excel 2013 vba在For循环每次迭代后刷新图表内容_Excel_Vba_Loops_Iteration_Refresh - Fatal编程技术网

Excel 2013 vba在For循环每次迭代后刷新图表内容

Excel 2013 vba在For循环每次迭代后刷新图表内容,excel,vba,loops,iteration,refresh,Excel,Vba,Loops,Iteration,Refresh,问题:在for循环的每次迭代后,在ChartObject中刷新序列的图形表示 Ex. y=m*Cos(x) y - Values m - parameter 我有一些数据是从带参数的公式中计算出来的。我想想象一下参数的变化对XYgraph有什么影响。我想在for循环中完成它(添加了Sleep确实有时间查看结果)。 数据和公式在Excel电子表格中。参数的更新脚本位于VBA模块中。更新对电子表格中的值有效,但不影响图形 工作簿。RefreshAll不起作用; 图表。刷新无效 图表在上次迭代后更

问题:在for循环的每次迭代后,在ChartObject中刷新序列的图形表示

Ex. y=m*Cos(x) 
y - Values
m - parameter
我有一些数据是从带参数的公式中计算出来的。我想想象一下参数的变化对XYgraph有什么影响。我想在for循环中完成它(添加了
Sleep
确实有时间查看结果)。 数据和公式在Excel电子表格中。参数的更新脚本位于VBA模块中。更新对电子表格中的值有效,但不影响图形

工作簿。RefreshAll
不起作用;
图表。刷新
无效

图表在上次迭代后更新


有什么想法吗?

在每个迭代步骤后,在代码中添加一个
DoEvents
。它对我很有用。

在Excel for Office 365中,我得到的XYChart实时更新仅以这种方式工作(XYChart将在每个
循环迭代回合的
期间/结束时更新)。我根本无法让
Sleep()
工作。不幸的是,
Application.Wait
tick分辨率为1秒,因此动画可能相对较慢。另外,
.Chart.Refresh
也没有达到预期效果(用于
for
循环期间的自动更新)

注意:以下一些代码在您的情况下可能不是必需的(至少
应用程序。屏幕更新默认情况下应处于打开状态)


Thx-Vacip。工作起来很有魅力!他工作得很好。DoEvents+睡眠已停止。您可以尝试
应用程序。等待
而不是
睡眠
。缺点是最短时间为1秒。好处是它不依赖于CPU时钟(
sleep
is)。
Application.ScreenUpdating = True    
ActiveSheet.ChartObjects(1).Activate
    For i = 1 To 10
       'Chart source data cells manipulation/update and other chart related routines here.'

       ActiveSheet.ChartObjects(1).Activate
       Application.Wait (Now + TimeValue("00:00:01"))
       DoEvents
   Next i