Excel VBA質問箱 IV

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

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


53275 / 76732 ←次へ | 前へ→

【28275】Re:match関数について
発言  Hirofumi  - 05/9/1(木) 21:46 -

引用なし
パスワード
   言葉が足らなかったので、付け足します

>その行がtextbox等で1行目とか3行目とか指定された場合に、
>その指定された配列から同じように探索するには、
>”探索範囲の先頭セル”下記の部分を変更すればいいのでしょうか?
>Cellsのセルが変化するということですよね?
>また、表から探索するとなると範囲も定義づけが必要となるのでしょうか?
>
>>  '探索範囲の先頭セル位置を指定
>>  With ActiveSheet.Cells(1, "A")
>>    '列数を取得
>>    lngColumns = .Offset(, 256 - .Column).End(xlToLeft).Column - .Column + 1

基本的には、其の通りだと思います

と書きましたが、私が直すとすれば、今回書いたコードの
「Private Sub ComboBox1_Change()」の中で書いている様にOffsetで指定します

  With rngListTop
    '列数を取得
    lngColumns = .Offset(lngRow, 256 - .Column).End(xlToLeft).Column - .Column + 1
    'この部分(以下4行)は、数表が有れば必要ないかも?
    If lngColumns <= 1 And .Value = "" Then
      MsgBox "参照データが有りません"
      Exit Sub
    End If
    '探索範囲を変数に代入
    Set rngScope = .Offset(lngRow).Resize(, lngColumns)
  End With

理由は、本来、以下の部分は基準点の意味を持たせて有ります
(前回は、1行なので同じなのですが?)

  '探索範囲の先頭セル位置を指定
  Set rngListTop = Worksheets("Sheet1").Cells(1, "A")

其の意味は、今回の「A1:E3」の範囲が、
もし何かの理由で「B2:F4」に成った場合、行列を直接指定していると
コードの他の部分まで影響する可能性が有りますが、
今回の様にOffsetで指定すれば、以下の様にすれば事足ります

  '探索範囲の先頭セル位置を指定
  Set rngListTop = Worksheets("Sheet1").Cells(2, "B")

其の点を注意して下さい
0 hits

【28222】match関数について KIKAKU 05/8/31(水) 15:44 質問
【28226】Re:match関数について ichinose 05/8/31(水) 16:42 発言
【28227】Re:match関数について KIKAKU 05/8/31(水) 17:33 お礼
【28233】Re:match関数について Hirofumi 05/8/31(水) 21:12 回答
【28238】Re:match関数について KIKAKU 05/9/1(木) 0:03 質問
【28242】Re:match関数について ichinose 05/9/1(木) 7:20 発言
【28273】Re:match関数について Hirofumi 05/9/1(木) 20:46 回答
【28275】Re:match関数について Hirofumi 05/9/1(木) 21:46 発言
【28305】Re:match関数について KIKAKU 05/9/2(金) 12:53 質問
【28311】Re:match関数について ichinose 05/9/2(金) 13:21 発言
【28340】Re:match関数について KIKAKU 05/9/2(金) 18:50 質問
【28354】Re:match関数について ichinose 05/9/3(土) 8:53 発言
【28365】Re:match関数について KIKAKU 05/9/3(土) 22:06 お礼
【28349】Re:match関数について Hirofumi 05/9/2(金) 22:21 回答

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