Excel VBA質問箱 IV

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

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


11035 / 13644 ツリー ←次へ | 前へ→

【18393】該当の全てのデータ抽出 のり 04/9/22(水) 15:59 質問[未読]
【18399】Re:該当の全てのデータ抽出 IROC 04/9/22(水) 16:34 回答[未読]
【18407】Re:該当の全てのデータ抽出 のり 04/9/22(水) 18:48 質問[未読]
【18528】Re:該当の全てのデータ抽出 @MS1 04/9/28(火) 21:41 回答[未読]
【18529】Re:該当の全てのデータ抽出 Asaki 04/9/28(火) 22:50 回答[未読]

【18393】該当の全てのデータ抽出
質問  のり E-MAIL  - 04/9/22(水) 15:59 -

引用なし
パスワード
   どなたかご教授ください。

質問:『VLOOKUP関数は非常に便利ですが、検索先データの最初に合致したデータ

    (上位行)しか抽出できないと思います。

    検索条件の全てのデータを抽出可能でしょうか。?』

条件:今回の対象シートは2枚あります。

    シート1のセル A4〜DF2000 に元データが入っています。(A列が検索条件)

    シート2のA4に入力された数字を検索条件としてB4,C4にデータを抽出
 
        したいと思っています。又、検索結果複数の該当があれば

        B5,C5・・・・・Bn,Cnと表示させたいのですが。

        

【18399】Re:該当の全てのデータ抽出
回答  IROC  - 04/9/22(水) 16:34 -

引用なし
パスワード
   VBAではなく、数式で処理したいということでしょうか?

【18407】Re:該当の全てのデータ抽出
質問  のり E-MAIL  - 04/9/22(水) 18:48 -

引用なし
パスワード
   ▼IROC さん:
>VBAではなく、数式で処理したいということでしょうか?

数式で出来ればいいです。

【18528】Re:該当の全てのデータ抽出
回答  @MS1  - 04/9/28(火) 21:41 -

引用なし
パスワード
   ▼のり さん:
こんにちは
私もVBAは良く知らないのですが、ベーシック的なVBですが、
今回の件は次のようなものでも、十分ご希望の結果は得られる
と思います。ひとつの、参考までに。

Sub 検索()
J = 4
II = 0
 Range("A3:A65536").Select

検索KEY = Sheets("SHEET2").Cells(4, 1)

Do
  Selection.Find(What:=検索KEY, After:=ActiveCell, LookIn:=xlFormulas, LookAt _
    :=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
    False).Activate
  
  I = ActiveCell.Row
  If I = II Or I < II Then Exit Do
  
  II = I
  
  Sheets("SHEET2").Cells(J, 2) = Sheets("Sheet1").Cells(I, 2)
  Sheets("SHEET2").Cells(J, 3) = Sheets("Sheet1").Cells(I, 3)
  
  J = J + 1
  
Loop
  
End Sub

なお、SHEET2のクリアーは考慮してません。最初のほうでしてください。
FINDで見つからなかったときの処理も考慮してません。
XLPARTも部分一致でなく、完全な一致の方が良いのかも(これは仕様次第)。

的外れだったらごめんなさい。

【18529】Re:該当の全てのデータ抽出
回答  Asaki  - 04/9/28(火) 22:50 -

引用なし
パスワード
   こんばんは。

フィルタオプションではダメなのでしょうか?
各列に項目タイトルが必要ですが。

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