Excel VBA質問箱 IV

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

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


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

【42449】データの絞込み→データの抽出 ばっじぉ 06/9/12(火) 13:30 質問[未読]
【42454】Re:データの絞込み→データの抽出 ハナ 06/9/12(火) 15:36 回答[未読]
【42459】Re:データの絞込み→データの抽出 ばっじぉ 06/9/12(火) 17:23 お礼[未読]

【42449】データの絞込み→データの抽出
質問  ばっじぉ  - 06/9/12(火) 13:30 -

引用なし
パスワード
   ただいまデータの絞込みから、特定のデータを抽出する作業を行っております。
そこで躓いてしまっているので、ご教授頂けると幸いです。

行っている作業は以下の通りです。


例)

「シート1」
 |1|2|3|
 |A|B|A|
   ・
   ・
   ・

「シート2」
  1  |   A  |   B  |
  2  | A | B | A | B |
  3  |A|B|A|B|A|B|A|B|
データ欄 |あ|い|う|え|お|か|き|く|

(見づらくてすいません・・・)


「シート1」より、123の状態を判別して、
その状態に対応したデータを「シート2」より取得する。
(例の場合、「う」を取得する)
「シート1」のデータは1つ以上です。


ご教授よろしくお願い致します。

【42454】Re:データの絞込み→データの抽出
回答  ハナ  - 06/9/12(火) 15:36 -

引用なし
パスワード
   ▼ばっじぉ さん:
エラー処理も何も考えないで、こんなの作ってみましたけど・・・

>例)
>
>「シート1」
> |1|2|3|
> |A|B|A|
>   ・
>   ・
>   ・
>
>「シート2」
>  1  |   A  |   B  |
>  2  | A | B | A | B |
>  3  |A|B|A|B|A|B|A|B|
>データ欄 |あ|い|う|え|お|か|き|く|
>
>「シート1」より、123の状態を判別して、
>その状態に対応したデータを「シート2」より取得する。
>(例の場合、「う」を取得する)
>「シート1」のデータは1つ以上です。

Option Explicit

Sub test()
'
Dim WS1 As Worksheet
Dim WS2 As Worksheet
Dim LC As Long '最終行
Dim i As Long
Dim x As Integer

Set WS1 = Worksheets("Sheet1")

With WS1
  LC = .Range("A65536").End(xlUp).Row
  For i = 2 To LC
    x = 1
    If .Cells(i, 1) = "B" Then
      x = x + 4
    End If
    If .Cells(i, 2) = "B" Then
      x = x + 2
    End If
    If .Cells(i, 3) = "B" Then
      x = x + 1
    End If
    .Cells(i, 4).Value = Worksheets("Sheet2").Cells(4, x)
  Next i
End With

Set WS1 = Nothing

End Sub

【42459】Re:データの絞込み→データの抽出
お礼  ばっじぉ  - 06/9/12(火) 17:23 -

引用なし
パスワード
   ▼ハナ さん:
なるほど!
考え方に感服です。

実際例より項目が多かったり、
項目内容が可変だったりするので、また?な部分が出てきたらご質問させて頂きます。

ご教授ありがとうございました。

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