VBA で抽出したデータが一定数まできたら、異なるセルに折り返して抽出するように設定したい。
VBA で抽出したデータが一定数まできたら、異なるセルに折り返して抽出するように設定したいです。
◇シート1◇ ※元データ
A B C D
1| 氏名 役職 部署 年齢
――――――――――――――――
2| 山田 社員 開発 45
3| 田中 社員 人事 42
4| 鈴木 派遣 企画 30
5| 高橋 役員 人事 50
6| 坂野 社員 企画 33
7| 井上 派遣 企画 29
◇シート2◇
条件1.役職は"役員"で、部署が"人事"の人の
氏名、役職、部署をA3から順に抽出する
条件2.A列のデータが9行目まできたら
D3に抽出されるようにする
A B C D E F
1 氏名 役職 部署 氏名 役職 部署
2 高橋 役員 人事
3
4
5
6
7
8
9
――――――――――――――――――――
ちなみにこのサイトで以下のコードを作成してもらいましたが
これだとデータ元の全ての行が抽出されてしまいます。
Private Sub Worksheet_Activate()
With Sheets("Sheet1")
.AutoFilterMode = False
.Range("A1:E1").AutoFilter
.Range("A1:E1").AutoFilter Field:=2, Criteria1:="役員"
.Range("A1:E1").AutoFilter Field:=3, Criteria1:="人事"
.Range(.Range("A1"), .Range("A1").SpecialCells(xlLastCell)).SpecialCells(xlCellTypeVisible).Copy Range("A3")
.AutoFilterMode = False
End With
End Sub
条件2のデータを折り返す条件が難しいようであれば
条件1の3列のみ抽出する方法で結構ですので教えてください。
よろしくお願いします。
お礼
やっぱり自己満足の側面が大きいですよね。 大臣もそういう傾向が特に顕著ですよね。 細かく回答してくださったのでベストアンサーとさせていただきます。 ありがとうございます。