Excel VBA質問箱 IV

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

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


7371 / 13645 ツリー ←次へ | 前へ→

【39519】コードの省略 初心者 06/6/26(月) 9:16 質問[未読]
【39521】Re:コードの省略 Blue 06/6/26(月) 9:29 発言[未読]
【39522】Re:コードの省略 Statis 06/6/26(月) 9:38 発言[未読]
【39525】Re:コードの省略 taka 06/6/26(月) 10:37 発言[未読]
【39527】Re:コードの省略 Statis 06/6/26(月) 11:02 発言[未読]
【39528】Re:コードの省略 taka 06/6/26(月) 11:05 発言[未読]
【39529】Re:コードの省略 Statis 06/6/26(月) 11:12 回答[未読]
【39531】Re:コードの省略 taka 06/6/26(月) 11:31 発言[未読]
【39532】Re:コードの省略 Statis 06/6/26(月) 11:47 発言[未読]
【39536】Re:コードの省略 taka 06/6/26(月) 12:01 お礼[未読]

【39519】コードの省略
質問  初心者  - 06/6/26(月) 9:16 -

引用なし
パスワード
   下記コードを省略したいのですが教えていただけますか?
初心者なものでコードの意味がまだまだ理解できていません。
よろしくおねがい致します。

  If Worksheets(MyS).Range("BB8") = "1" Then
   OptionButton1 = True
  ElseIf Worksheets(MyS).Range("BB8") = "2" Then
   OptionButton2 = True
  ElseIf Worksheets(MyS).Range("BB8") = "3" Then
   OptionButton3 = True
  ElseIf Worksheets(MyS).Range("BB8") = "4" Then
   OptionButton4 = True
  ElseIf Worksheets(MyS).Range("BB8") = "5" Then
   OptionButton5 = True
  End If

  If Worksheets(MyS).Range("AZ65") = "1" Then
   OptionButton6 = True
  ElseIf Worksheets(MyS).Range("AZ65") = "2" Then
   OptionButton7 = True
  End If

  If Worksheets(MyS).Range("AZ66") = "1" Then
   OptionButton8 = True
  ElseIf Worksheets(MyS).Range("AZ66") = "2" Then
   OptionButton9 = True
  End If

  If Worksheets(MyS).Range("AZ68") = "1" Then
   OptionButton10 = True
  ElseIf Worksheets(MyS).Range("AZ68") = "2" Then
   OptionButton11 = True
  End If

【39521】Re:コードの省略
発言  Blue  - 06/6/26(月) 9:29 -

引用なし
パスワード
   回答ではありません。

あまり、「初心者」を連発するのはあまりよくありません。

初心者だからコメントがかけない。
初心者だからコードが理解できない。
初心者だから勉強しない。

ってのは通用しません。むしろ初心者だから、色々と「努力」しないといけません。
初心者は、回答をもらう上での「免罪符」ではありません。


それと、ハンドルネームですが、「初心者」というのもやめてもらいたいです。
それは、
・過去にそのハンドルで質問した人がいるので、だれがだれだか判別できない。
・いつまでも、初心者であるわけはない。(ハンドルをコロコロ変えるのも良くない)
という理由です。

【39522】Re:コードの省略
発言  Statis  - 06/6/26(月) 9:38 -

引用なし
パスワード
   こんにちは
下記と同じでは?
http://www.vbalab.net/vbaqa/c-board.cgi?cmd=one;no=39427;id=excel

【39525】Re:コードの省略
発言  taka  - 06/6/26(月) 10:37 -

引用なし
パスワード
   ▼Statis さん:
>こんにちは
>下記と同じでは?
>http://www.vbalab.net/vbaqa/c-board.cgi?cmd=one;no=39427;id=excel

すみません。同じです。
いろいろやってはみたものの上手くいきません。
どうかよろしくお願い致します。

【39527】Re:コードの省略
発言  Statis  - 06/6/26(月) 11:02 -

引用なし
パスワード
   こんにちは
これはUserFormですか、
それともシート上に作ったコントロールツールボックスのですか?

【39528】Re:コードの省略
発言  taka  - 06/6/26(月) 11:05 -

引用なし
パスワード
   ▼Statis さん:
>こんにちは
>これはUserFormですか、
>それともシート上に作ったコントロールツールボックスのですか?

シート上での処理になります。

【39529】Re:コードの省略
回答  Statis  - 06/6/26(月) 11:12 -

引用なし
パスワード
   こんにちは

こんな感じかな?


With Worksheets(MyS)
   Me.OLEObjects("OptionButton" & .Range("BB2").Value).Object.Value = True
   Me.OLEObjects("OptionButton" & .Range("AZ65").Value + 5).Object.Value = True
   Me.OLEObjects("OptionButton" & .Range("AZ66").Value + 7).Object.Value = True
   Me.OLEObjects("OptionButton" & .Range("AZ68").Value + 9).Object.Value = True
End With

【39531】Re:コードの省略
発言  taka  - 06/6/26(月) 11:31 -

引用なし
パスワード
   ▼Statis さん:
>こんにちは
>
>こんな感じかな?
>
>
>With Worksheets(MyS)
>   Me.OLEObjects("OptionButton" & .Range("BB2").Value).Object.Value = True
>   Me.OLEObjects("OptionButton" & .Range("AZ65").Value + 5).Object.Value = True
>   Me.OLEObjects("OptionButton" & .Range("AZ66").Value + 7).Object.Value = True
>   Me.OLEObjects("OptionButton" & .Range("AZ68").Value + 9).Object.Value = True
>End With


ありがとうございました。できました。
もし、上記コードでsheetのセルの選択部分を下記の様に順番にした場合はさらに省略できますか?

With Worksheets(MyS)
   Me.OLEObjects("OptionButton" & .Range("BG31").Value).Object.Value = True
   Me.OLEObjects("OptionButton" & .Range("BG32").Value + 5).Object.Value = True
   Me.OLEObjects("OptionButton" & .Range("BG33").Value + 7).Object.Value = True
   Me.OLEObjects("OptionButton" & .Range("BG34").Value + 9).Object.Value = True
End With

【39532】Re:コードの省略
発言  Statis  - 06/6/26(月) 11:47 -

引用なし
パスワード
   こんにちは

どのように「OptionButton」を配置しているかわかりませんが
OptionButtonはひとつしかチェックできませんが
セルの優先順位はあるのでしょうか?

>でsheetのセルの選択部分を下記の様に順番にした場合はさらに省略できますか
区分するコードを追加しなければなりませんので今より複雑になるような気がしますが?

【39536】Re:コードの省略
お礼  taka  - 06/6/26(月) 12:01 -

引用なし
パスワード
   ▼Statis さん:
>こんにちは
>
>どのように「OptionButton」を配置しているかわかりませんが
>OptionButtonはひとつしかチェックできませんが
>セルの優先順位はあるのでしょうか?
>
>>でsheetのセルの選択部分を下記の様に順番にした場合はさらに省略できますか
>区分するコードを追加しなければなりませんので今より複雑になるような気がしますが?

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

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