Excel VBA質問箱 IV

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

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


4084 / 13646 ツリー ←次へ | 前へ→

【58489】複数条件での検索 tokko 08/10/27(月) 23:05 質問[未読]
【58491】Re:複数条件での検索 ponpon 08/10/27(月) 23:29 発言[未読]
【58494】Re:複数条件での検索 tokko 08/10/28(火) 7:33 お礼[未読]
【58526】Re:複数条件での検索 tokko 08/10/28(火) 23:30 お礼[未読]

【58489】複数条件での検索
質問  tokko  - 08/10/27(月) 23:05 -

引用なし
パスワード
   どうぞよろしくお願いします。

FINDにて一つの条件で検索をかけていたのですが、
複数条件で検索をかけることは可能でしょうか?


  A   B      C   D ・・・・ L

1 1  001-1-22222   あ  い ・・  1X
2 2  003-1-77777   う  え ・・  1X
3 3  056-3-55555   か  な ・・  2X
4 ・  …… 
     ・  ・
・検索条件としては、
・・・B列のうち「-1-」と入っていたらM列に「1X」と表示

としていたものを、

・・・B列のうち左から3文字が「001から050」だったらはM列に「1X」、
・・・「051から100」だったらM列に「2X」と表示させたいのです・・
すべてのセルの書式は標準です。エクセルは2000使用しております。
   

Sub kensaku()

Dim C As Object
Dim mykey As String, fAddress As String

mykey = "-1-"
With Worksheets("Sheet1").Columns("B")
  Set C = .Find(what:=mykey, LookIn:=xlValues, lookat:=xlPart, _
      searchorder:=xlByColumns, matchbyte:=False)

If Not C Is Nothing Then
 fAdress = C.Address
 
Do
  C.Offset(0, 10) = "1X"
  Set C = .FindNext(C)
  If C.Address = fAddress Then Exit Sub
Loop
End If
End With
End Sub

Like演算子での検索でしたら可能なのでしょうか?
アドバイスいただければ、と思います、よろしくお願い致します。

【58491】Re:複数条件での検索
発言  ponpon  - 08/10/27(月) 23:29 -

引用なし
パスワード
   ▼tokko さん:
普通に回して処理しています。
もっと早い方法があるかもしれません。

Sub test()
  Dim myR As Range, r As Range
 
  With Sheets("Sheet1")
   Set myR = .Range(.Cells(1, 2), Cells(Rows.Count, 2).End(xlUp))
  End With
 
  For Each r In myR
   Select Case Left$(r.Value, 3)
    Case Format(1, "000") To Format(50, "000")
     r.Offset(, 11).Value = "1X"
     
    Case Format(51, "000") To Format(100, "000")
     r.Offset(, 11).Value = "2X"
   End Select
  Next
End Sub

【58494】Re:複数条件での検索
お礼  tokko  - 08/10/28(火) 7:33 -

引用なし
パスワード
   ▼ponpon さん:
こんにちは、
早速のご回答、ありがとうございます、
早速本日会社でじっくりコードを読ませていただき
ますね。

取り急ぎお礼まで。。

【58526】Re:複数条件での検索
お礼  tokko  - 08/10/28(火) 23:30 -

引用なし
パスワード
   ▼ponpon さん:
ご連絡が遅くなってしまいました。
ponponさん、確認いたしました。できました!
Format関数というものを初めて知りました・・・
勉強になりました。と共に、もっとVBAの勉強を頑張ら
ないと、、、と思いました。。

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

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