Excel VBA質問箱 IV

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

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


39493 / 76738 ←次へ | 前へ→

【42355】Re:プロシージャの大きすぎて処理出来ない
発言  タツミ  - 06/9/7(木) 20:46 -

引用なし
パスワード
   ▼ichinose さん:

先ほどはありがとうございます。
ichinoseさんより教えて頂いたコードを元にあれこれ悪戦苦闘しています。
           ↓
>ユーザーに投入位置を特定させた後,その位置に基づいてフォームから
>シートへデータを投入する為の記述をしました。
>この後,延々と続く(34×5行=170行=170セット)のですが
>これではプロシージャが大きすぎて処理出来ません。
           ↓
>これは、OptionButton1〜OptionButton5まであるということですか?
           ↓
私目の表現方法が悪かったですね。OptionButtonは1〜5までありますが
そのほかにTextBox(29)があり、そのTextBoxの値との組み合わせによりセル
位置を特定しています。

TextBox29.Value="1"に対して1〜5(行は、9,10,11,12,13を指定)
TextBox29.Value="2"に対して1〜5(行は、14,15,16,17,18を指定)
TextBox29.Value="3"に対して1〜5(行は、19,20,21,22,23を指定)
       ・
       ・
       ・
つまり、こんな感じの表構成になっています。

      A   B   C   D   E  
8   |  |    |   |   |   |
    ----------------------------------------------
9   |  |    |   |   |   | →A系列データ
     |  |--------------------------------------
10   |  |    |   |   |   | →B系列データ
     |  |--------------------------------------
11   | 1 |    |   |   |   | →C系列データ
    |  |--------------------------------------
12   |  |    |   |   |   |
    |  |--------------------------------------
13   |  |    |   |   |   |
    ----------------------------------------------
14   |  |    |   |   |   |
     |  |--------------------------------------
15   |  |    |   |   |   |
     |  |--------------------------------------
16   | 2 |    |   |   |   |
    |  |--------------------------------------
17   |  |    |   |   |   |
    |  |--------------------------------------
18   |  |    |   |   |   |
    ----------------------------------------------
19   |  |    |   |   |   |

TextBoxで列Aの5行単位(1〜34)のセルを、
OptionButton1でその5行単位内の順番を、
それぞれ特定するようにしています。

ご提示頂いたコードは下記のような意味かと考えますが、
    ↓
Dim o_rw As Variant       →変数の配列(名称)を宣言し、
o_rw = Array(9, 10, 11, 12, 13) →内容を列挙(リスト)
Dim idx As Long         →?
For idx = 1 To 5         →インデックスの有効範囲?

If Controls("OptionButton" & idx).Value = True Then
Exit For
                →OptionButtonとインデックス値を取得後


Next idx

If TextBox29.Value = "1" And idx < 6 Then
Call set_form_data(o_rw(idx - 1))
→TextBox29の値が1であればset_form_dataを呼び出し実行する。

私のレベルではこの程度の解釈しか出来ず....

どうでしょう....

0 hits

【42337】プロシージャの大きすぎて処理出来ない タツミ 06/9/7(木) 0:59 質問
【42338】Re:プロシージャの大きすぎて処理出来ない ichinose 06/9/7(木) 8:16 発言
【42340】Re:プロシージャの大きすぎて処理出来ない タツミ 06/9/7(木) 9:30 お礼
【42355】Re:プロシージャの大きすぎて処理出来ない タツミ 06/9/7(木) 20:46 発言
【42356】Re:プロシージャの大きすぎて処理出来ない ichinose 06/9/7(木) 22:29 発言
【42368】Re:プロシージャの大きすぎて処理出来ない タツミ 06/9/8(金) 10:44 お礼
【42344】Re:プロシージャの大きすぎて処理出来ない m2m10 06/9/7(木) 10:11 発言

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