VBA excel增量

嗨,大家好我正在做一个简单的游戏在Excel中,我只需要笑脸图像增加作为一个无尽的亚军types的游戏。 一旦按下播放button,我就会向上移动,但是我希望它继续移动。 有任何想法吗 ?

这是我到目前为止的代码:

Sub Play() ' ' Play Macro ' ' ActiveSheet.Shapes.Range(Array("Smiley Face 1028")).Select Selection.ShapeRange.IncrementTop -20.8333070866 End Sub 

你需要用某种计时器来循环移动它。 看到这个例子

 Sub Play() Dim shp As Shape Dim r As Double Set shp = ActiveSheet.Shapes("Smiley Face 1028") r = shp.Top Do r = shp.Top If r <= 1 Then Exit Do shp.IncrementTop -1 Wait 0.5 '<~~ Wait for 30 seconds Loop MsgBox "Animation Over. :) !!!" End Sub Private Sub Wait(ByVal nSec As Double) nSec = nSec + Timer While nSec > Timer DoEvents Wend End Sub