Chạy hiệu ứng trong EXcel bằng VBA

Liên hệ QC

hoahuongduong1986

Thành viên thường trực
Tham gia
14/11/18
Bài viết
346
Được thích
40
Dear A Chị,
Tại sao em chạy Code này thì không mở được File Excel khác ạ. Chỉ khi e tắt File có ứng dụng chuyển động này mới mở được File khác ạ.



Public Sub StartRoda()
Dim t As Single
roda = True
Do

n = 15
With Shapes("Group 29")
.IncrementRotation (n)
End With

With Shapes("Group 28")
.IncrementRotation (-n)
End With

With Shapes("Group 37")
.IncrementRotation (CLng(n / 1.5))
End With

t = Timer
Do
DoEvents
Loop Until Timer - t > 0.05
Loop Until Not roda
End Sub
Private Sub Worksheet_Activate()
Call StartRoda
End Sub
 
Theo chút xíu kiến thức của tôi về code Excel thì do bạn dùng Timer và loop ngay bên trong cái vba Sub nên ứng dụng bị khoá cho đến khi chạy xong Sub.
Bạn đổi qua dùng Application.OnTime để chạy gián tiếp timer thì sẽ thực hiện được các thao tác khác trên Excel. Còn chính xác code như thế nào thì nhờ các bạn khác hỗ trợ giùm. :)
 
Upvote 0
Web KT

Bài viết mới nhất

Back
Top Bottom