Excel VBA質問箱 IV

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

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


72179 / 76738 ←次へ | 前へ→

【9044】Re:Optionbuttonについて。
回答  INA  - 03/11/16(日) 0:04 -

引用なし
パスワード
   >INAさんはOLEObjectsというのを使っておられましたが、
>Optionbutton & i.Valueではなぜエラーになるのですか?
>Optionbutton1.Valueのように番号を指定するとエラーはでないのに。
visual Basic ではコントロール配列というものがあります。
オプションボタンなどのコントロールを配列のように扱えるものです。
Optionbutton(1)
Optionbutton(2)
などと表現して便利なものなのですが、VBAでは使用できません。

シート上のコントロールツールボックスのコントロールは
OLEObjectsというオブジェクトに属する扱いになっております。
& で結合できるのは文字列ですので、
オブジェクト等の基本構文は結合できないのです。
そのため "" で囲まれた文字列の状態に置いて、 & i が使えます。
Optionbutton1 で1つのオブジェクトになっているので、
Optionbutton & 1 では動作しないのです。
これが可能だと
O & p & t & ion & but & ton1 & . & Value のような
むちゃくちゃな記述が出来てしまいます。 
 
まとまりのない説明ですが、OLEObjectsを使うと覚えておいて下さい。
なおユーザーフォーム上で、このような
「コントロール配列もどき」を使うときは、
  For C = 1 To 3
    If Me.Controls("CheckBox" & C).Value = True Then
       cnt = cnt + 1
    End If
  Next C
のように Controls を使うと出来ます。
0 hits

【9037】Optionbuttonについて。 Indian 03/11/15(土) 2:45 質問
【9038】Re:Optionbuttonについて。 INA 03/11/15(土) 8:25 回答
【9039】Re:Optionbuttonについて。 Indian 03/11/15(土) 9:00 発言
【9042】Re:Optionbuttonについて。 INA 03/11/15(土) 10:10 回答
【9043】Re:Optionbuttonについて。 Indian 03/11/15(土) 23:18 お礼
【9044】Re:Optionbuttonについて。 INA 03/11/16(日) 0:04 回答
【9050】Re:Optionbuttonについて。 Indian 03/11/16(日) 2:49 お礼

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