В настоящее время у меня есть макрос, который, когда я нажимаю в любом месте пользовательской формы, картинка помещается влево. я добавил в него таймер, чтобы он всегда оставался слева после первого нажатия кнопки. Проблема в том, что кадр изображения перемещается влево, но только один раз. После этого ничего не происходит. Это мой код:Excel VBA Timer сохраняет остановку
Private Sub UserForm_MouseUp(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Call PlayerMoving
End Sub
Public Sub PlayerMoving()
Player1.Left = Player1.Left + 5
Call StartTimer
End Sub
Sub StartTimer()
Application.OnTime Now + TimeValue("00:00:01"), "PlayerMoving"
End Sub
Как я уже упоминал, после первого хода ничего не происходит. Я не знаю почему. я также попробовал сделать во время цикла, как это:
Public Sub PlayerMoving()
do while SOME_STATEMENT_HERE
Player1.Left = Player1.Left + 5
Call StartTimer
loop
End Sub
Большое спасибо – HumanlyRespectable