|
ビビンバ さん:
おはようございます。
>つい最近VBAの存在を知ったばかりの超初心者ですので難しいことは全く分からないのですが、よかったら教えて下さい
>If x = 1 Then Goto a Else Goto b
>a:
>Image1.Visible = True
>msgbox "これは赤色です"
>b:
>Image2.Visible = True
>msgbox "これは青色です"
まず、本当に初心者なら、今後上記のようなGotoの使用は一切しないでコードを書く癖を
付けて下さい。
(昔のN88Basicでは、上記のような記述をしなければならなかったかもしれませんが、
VBAを含めた殆どの言語が上記のようなGOTO文を使用しないで記述できますし、
それの方がコードがわかりやすいです)
If x = 1 Then
Image1.Visible = True
msgbox "これは赤色です"
else
Image2.Visible = True
msgbox "これは青色です"
end if
投稿されたコードはこのように書けますから・・・。
>僕は扱う画像が多い上、話の進行によって画像を変えたいので、あらかじめ
>x = 1の時赤い画像が出てx = 1以外の時は赤い画像は出ない
>x = 2の時青い画像が出てx = 2以外の時は青い画像は出ない
>と決めておいて
>
>msgbox "問題です。"
>msgbox "これは何色でしょうか?"
>x = 1
>msgbox "それは赤色です。"
>msgbox "ではこれは何色でしょうか?"
>x = 2
>msgbox "それは青色です。"
>
>という風にしたいのですが(本当はもっと長いですが)
>それは可能なのでしょうか?もし可能ならば方法を教えて下さい。
ここにあるImage1というオブジェクトがどこに配置されているかで
(シートに配置したImageオブジェクトなのか ユーザーフォームに配置したそれなのか)
コードの記述方法が違いますから、どこに配置したものなのかきちんと説明してください。
方法としては、配列を使います。
|
|