Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


19817 / 76735 ←次へ | 前へ→

【62344】クリックだけでその画像を最背面に
質問  チューリップ  - 09/7/12(日) 15:56 -

引用なし
パスワード
   こんにちは、またわからないことが出てきたのでお願いします。
画像を置いて説明文を書く、アルバムのようなものを作っています。
(EXCELでの作成は適さないかもしれませんが、VBAの練習を兼ねて作っています)

たとえばHPなんかで、街並みの写真があり、クリックすると同じ場所の昔の写真が表示され、再度クリックすると元の写真が出てくる新旧比較みたいなのがありますが、自分の写真を使ってそういうのを作成しています。

画像を二枚重ねにして上をクリックすると下に隠れてる画像が前面に出てくるように、下記のようなコードで作りました。

上にある画像に書いたコード----------------------------
Sub 写真の順番を変える()
ActiveSheet.Shapes("写真1").Select
Selection.ShapeRange.ZOrder msoSendToBack
End Sub
------------------------------------------------------
下になっている写真に書いたコード----------------------
Sub 写真の順番を変える()
ActiveSheet.Shapes("写真2").Select
Selection.ShapeRange.ZOrder msoSendToBack
End Sub
------------------------------------------------------
二枚ひと組なわけですが、こうするとたくさんの写真を使う場合
ひと組ずつコードを作成しなければいけません。(100組だったらコードが100)
ですが、

Selection.ShapeRange.ZOrder msoSendToBack
End Sub

だけにすると、プログラムを実行する前にいちいち写真をアクティブにしなければいけません。(マクロ登録してるからCtrl押しながら)

そんなこといちいちやってられないので、クリックだけでクリックした写真を最背面に移動するにはどうすればいいでしょうか?
あと、画面を開いたときには絶対に写真1が最前面に表示されるようにする方法も知りたいです。

0 hits

【62344】クリックだけでその画像を最背面に チューリップ 09/7/12(日) 15:56 質問
【62345】Re:クリックだけでその画像を最背面に ichinose 09/7/12(日) 17:24 発言
【62346】Re:クリックだけでその画像を最背面に チューリップ 09/7/12(日) 22:03 お礼
【62347】シートを開いたときに特定の画像を最前面に チューリップ 09/7/12(日) 22:46 質問
【62348】Re:シートを開いたときに特定の画像を最前... ichinose 09/7/13(月) 7:38 発言
【62349】Re:シートを開いたときに特定の画像を最前... チューリップ 09/7/13(月) 11:10 お礼

19817 / 76735 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free