• ベストアンサー

UWSCにおける変数の扱い方

UWSCでの質問です。 変数を変数で指定することは可能でしょうか? joken = 1 ka_mes = "OK" hi_mes = "NG" ifb joken = 1 then hensu = ka else hensu = hi msgbox(hensu + "_mes") // ←この結果として「OK」と表示させたい 簡略化していますので、この例では、素直にif文のthenとelseにmsgbox命令を書けばいいのですが、実際のプログラムはhensuを何度も使うためそうもいきません。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.4

// こういうこと? joken = 1 ka_mes = "OK" hi_mes = "NG" ifb joken = 1 then  hensu = "ka" else  hensu = "hi" endif msgbox(eval(hensu + "_mes"))

alldayday
質問者

お礼

ありがとうございます。 やりたいのはこういうことです! 助かりました。

alldayday
質問者

補足

もしかして、眠たい詩人さんですか? いつも、サイトを参考にさせてもらってます。 拙い質問ですが、質問の意図を汲み取ってご回答頂きありがとうございました。

その他の回答 (3)

  • D-Matsu
  • ベストアンサー率45% (1080/2394)
回答No.3

UWSCは連想配列が使えるようなので、そっちの方がより近いやり方になりますか。 HashTbl mes mes["ka"] = "OK" mes["hi"] = "NG" ifb joken = 1 then hensu = "ka" else hensu = "hi" endif msgbox(mes[hensu])

alldayday
質問者

お礼

ありがとうございました。

  • D-Matsu
  • ベストアンサー率45% (1080/2394)
回答No.2

なんでそんなトリッキーなことがしたいのでしょうか? っていうのと、そんな器用な真似は出来ないと思います。 代替案としては配列使うくらいですかねぇ。 dim mes[1] = "OK", "NG" ifb joken = 1 then hensu = 0 else hensu = 1 endif msgbox(mes[hensu])

  • D-Matsu
  • ベストアンサー率45% (1080/2394)
回答No.1

使ったことはないので直感で書きますが、 ifb (joken = 1) then hensu = ha_mes else hensu = hi_mes endif msgbox(hensu) では駄目なんですか? 変数の中身を別の変数に入れる、なんて普通にできると思うんですが……

alldayday
質問者

補足

ご回答ありがとうございます。 言葉が足らず申し訳ありません。 ご回答頂いた方法はもちろん可能です。 ただ、今回やりたいのは、「hensu + "_mes"」みたいに変数名自体を可変で設定したいのです。 よろしくお願いします。

関連するQ&A