
概要
エクセルマクロでアニメを作る方法を教えてください。
詳細
エクセルでアニメを作りたいと思います。
「エクセルでアニメ」とひとことで言ってもいろんなパターンがあると思います。
画像描画機能で作成した、基本的な画像を上下左右に動かすもの、とか
セルに文字列や記号を表示し、それを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で質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教える店舗&オフィスのセキュリティ対策術
中・小規模の店舗やオフィスのセキュリティセキュリティ対策について、プロにどう対策すべきか 何を注意すべきかを教えていただきました!
-
visual basic初心者です。 visual studioで電卓を作成しています。 実行時にテ
Visual Basic(VBA)
-
Excel VBAの解読について質問があります。 概要は、マクロでチェックボックスにチェックすると日
Visual Basic(VBA)
-
select caseの入れ子
Visual Basic(VBA)
-
-
4
特定の文字を簡単な操作で半角スペースに変換するか削除したい
Visual Basic(VBA)
-
5
マクロ実行時、自動で背景色を変えたい。 C列にあるチェックボックスをチェックするとB列に「TRUE」
Visual Basic(VBA)
-
6
【VBAエラー】Nextに対するForがありません 対策について
Visual Basic(VBA)
-
7
ファイル全てを .xlsm に変更したところ、プログラムが途中で落ちてしまっています
Visual Basic(VBA)
-
8
改ページを挿入
Visual Basic(VBA)
-
9
VBA初心者です。電話番号の数字の前に0を表示させたいです。
Visual Basic(VBA)
-
10
いつもお世話になります 下記のコード実行すると エラーになります わかるかた教えてくれませんでしょう
Visual Basic(VBA)
-
11
なぜこんな初歩的なVBAのIf文でエラーか発生して使えないのか、全く理解出来ません。誰か助けてくださ
Visual Basic(VBA)
-
12
Excel 知恵を下さい。 下記表は、例です。本来の表のデータ量は、1000件以上あります… A列:
Excel(エクセル)
-
13
このマクロの説明文を教えてほしいです。
Visual Basic(VBA)
-
14
別シートから年齢別の件数をカウントしたいの続き
Visual Basic(VBA)
-
15
別シートから年齢別の件数をカウントしたい
Visual Basic(VBA)
-
16
VBAをやっていますが初心者でもわかる料金が無料なサイトなどありますか?
Visual Basic(VBA)
-
17
paintに貼り付けてある画像の大きさをvbaまたはそれに近いやり方で変更
Visual Basic(VBA)
-
18
VBAについて教えてください
Visual Basic(VBA)
-
19
任意の置換を互換の積で表すプログラム
Visual Basic(VBA)
-
20
10円の誤差が分からない
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
人気Q&Aランキング
-
4
【Excel VBA】指定行以降をクリ...
-
5
screenupdatingが機能しなくて...
-
6
Excel VBA、 別ブックの最終行...
-
7
セル色なしの行一括削除
-
8
エクセルvba:自己セルの情報取...
-
9
エクセルの複数データーをダブ...
-
10
EXCELのVBA-フィルタ抽出後の...
-
11
RC表示に変数を入れる
-
12
B列に特定の文字列が入っている...
-
13
Excel vbaで特定の文字以外が入...
-
14
i=cells(Rows.Count, 1)とi=cel...
-
15
Excelのプルダウンで2列分の情...
-
16
ユーザーフォーム内のテキスト...
-
17
【EXCEL VBA】Range("A:A").Fi...
-
18
セルの結果でマクロ実行
-
19
Excelで指定した日付から過去の...
-
20
Excel VBA メール作成について ...
おすすめ情報
公式facebook
公式twitter