VBAの簡単な動きが見えない
Q&A
Closed
エクセルで貼り付けした図をちょっとだけアニメーションのように動かしたくて
Range("A1:B2")にPicture 1
Range("D1:E2")にPicture 2
がはめ込まれています。
マクロで
図(Picture 1)をクリックしたらPicture 1が他のセルに移動し、同時にPicture 2がPicture 1が元あったRange("A1")に動く
↓
何秒か待って
↓
Picture 1とPicture 2が元の位置に戻る
簡単なマクロなんですが、Range("A1")にある図が入れ替わったりするのが見えません。
どうもSleepで止まってるように見えません。
標準モジュールのVBAはこんな感じです。
qiita.rb
Private Declare PtrSafe Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As LongPtr)
Sub 図のちょっとした動き()
ActiveSheet.Shapes("Picture 1").Left = ActiveSheet.Range("G1").Left
ActiveSheet.Shapes("Picture 1").Top = ActiveSheet.Range("G1").Top
ActiveSheet.Shapes("Picture 2").Left = ActiveSheet.Range("A1").Left
ActiveSheet.Shapes("Picture 2").Top = ActiveSheet.Range("A1").Top
Sleep 5000
ActiveSheet.Shapes("Picture 2").Left = ActiveSheet.Range("D1").Left
ActiveSheet.Shapes("Picture 2").Top = ActiveSheet.Range("D1").Top
ActiveSheet.Shapes("Picture 1").Left = ActiveSheet.Range("A1").Left
ActiveSheet.Shapes("Picture 1").Top = ActiveSheet.Range("A1").Top
End Sub
どうにかうまく動いているようなマクロにならないですか?
初心者なので、変な質問ですみません。よろしくお願いいたします。
0 likes