概要
エクセルマクロでアニメを作る方法を教えてください。
詳細
エクセルでアニメを作りたいと思います。
「エクセルでアニメ」とひとことで言ってもいろんなパターンがあると思います。
画像描画機能で作成した、基本的な画像を上下左右に動かすもの、とか
セルに文字列や記号を表示し、それを1セルずつ移動させてアニメーションさせるもの、とか
セルに色塗りをしておおざっぱなドット絵を描いてそれを少しづつ変化させる、とか。
今回は
「予めペイント機能などで描いた画像をシート状に複写して用意しておき、それらを順に切り替えて表示しては消し、表示しては消し、を繰り返す、パラパラ漫画形式のアニメをつくる」
とします。
ここに既にペイント機能で作成した画像が数枚用意されているとします。
画像の名称は
"Picture 1" "Picture 2" "Picture 3" (以下、必要な枚数ぶん、用意します)
これらがシート1、 もしくはアクティブシートに存在しております。
閲覧者に見えてしまってはよくないので、セルA1から遠く離れた位置に存在しているものとします。
これを"Picture 1"をシートの左上(セルで言えばA1の位置)に移動させて、
1/24秒間表示し、元の位置に戻す
次に"Picture 2"をシートの左上(セルで言えばA1の位置)に移動させて、
1/24秒間表示し、元の位置に戻す
(以下、画像の数だけ繰り返す)
というのをやりたいと思います。
エクセルマクロに関して調べたら次のマクロでイケそうです。
Private Declare Sub Sleep Lib "kernel32" (ByVal ms As Long)
Sub macro1()
Dim time As Long
time = 42 ' time = 42 は、1/24秒間
'?1
Sleep time
'?2
End Sub
?1のところに
"Picture 1"をシートの左上(セルで言えばA1の位置)に移動させる
?2のところに
元の位置に戻す
のマクロプログラムを作って、あとは繰り返し行えばイケそうです
どうやったら出来るでしょうか?
教えてください。
(なお、複写(コピペ)を使わずに移動を使うのは複写(コピペ)を使うと
画像を指し示す"Picture 1"が変化してしまい、一回きりしかマクロが動かせなくなってしまうために割けるべきと考えました。
他に良いアイディアがありましたらご教授願います)
No.1ベストアンサー
- 回答日時:
こんにちは
>?1のところに
>"Picture 1"をシートの左上(セルで言えばA1の位置)に移動させる
図形の.top, .left 属性の値を指定すれば良いです。
http://club-vba.tokyo/vba-zukei-idou/
https://learn.microsoft.com/ja-jp/office/vba/api …
>?2のところに
>元の位置に戻す
最初に移動する前に、元の位置を変数に記憶しておいて、その位置に改めて移動すれば良いです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excelのマクロについて教えてください。 4 2022/05/31 14:07
- Excel(エクセル) エクセルのマクロについて教えてください。 3 2023/02/07 14:47
- Excel(エクセル) エクセル VBA For Next 繰り返しの書き方を教えてください 6 2022/09/01 14:11
- PowerPoint(パワーポイント) ExcelのVBAコードについて教えてください。 3 2022/05/25 14:32
- Excel(エクセル) 【マクロ】スクショ印刷がうまく動かない件 5 2022/12/06 17:37
- Visual Basic(VBA) 【VBA】写真の貼り付けコードがうまく機能しません。 5 2022/09/01 18:43
- Visual Basic(VBA) エクセルのマクロについて教えてください。 7 2023/07/04 09:18
- Excel(エクセル) excelで検索した商品の画像(ネットワーク上の)を表示させたい。 3 2023/06/28 00:32
- Excel(エクセル) エクセル、画像ファイル名の書かれたセル(複数個所)に画像を一括で表示させる方法 1 2023/04/19 00:19
- Visual Basic(VBA) EXCEL VBAにて動的にCheckBOXを複数作成し、同BOXにイベントを追加したい 1 2023/03/16 07:05
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
入力したセル番地をメッセージ...
-
特定のセルが空白だったら、そ...
-
Excelで指定した日付から過去の...
-
VBAでセル同士を比較して色付け
-
【Excel】指定したセルの名前で...
-
EXCELで変数をペーストしたい
-
Excelのプルダウンで2列分の情...
-
【VBA】カーソルのある行の1行...
-
指定した条件で行セルを非表示...
-
任意フォルダから画像をすべて...
-
【Excel】セルの背景色、文字色...
-
【Excel VBA】指定行以降をクリ...
-
エクセルマクロでアニメを作る...
-
DataGridViewで右寄せ左寄せが...
-
テキストボックスに入力したデ...
-
重複しない乱数
-
置換文字を連番で振りたい
-
特定の文字を条件に行挿入とそ...
-
ExcelVBA:オートフィルタをかけ...
-
Excel2013,2016 マクロの動作が...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ExcelVBAを使って、値...
-
特定のセルが空白だったら、そ...
-
i=cells(Rows.Count, 1)とi=cel...
-
【Excel VBA】指定行以降をクリ...
-
Excelで指定した日付から過去の...
-
【Excel】指定したセルの名前で...
-
TODAY()で設定したセルの日付...
-
EXCELで変数をペーストしたい
-
Excel VBA、 別ブックの最終行...
-
Excelのプルダウンで2列分の情...
-
VBA コピーして次の値まで貼り...
-
screenupdatingが機能しなくて...
-
エクセルVBAでコピーして順...
-
VBA初心者です。結合セルを保持...
-
セル色なしの行一括削除
-
VBAでセルをクリックする回...
-
Excel vbaで特定の文字以外が入...
-
DataGridViewの各セル幅を自由...
-
特定の文字を条件に行挿入とそ...
-
【VBA】指定したセルと同じ値で...
おすすめ情報