|
▼甘いスイカ さん:
今晩は、こんな感じでどうでしょうか?
Sub test()
Dim R As Range
Dim MyR As Range
Sheets("抽出").Select '←抽出したい氏名をB2〜B列に並べてください
Set MyR = Range(Cells(2, 2), Cells(65536, 2).End(xlUp))
For Each R In MyR
Sheets("データ").Select '←データを貼り付けてシート作成して下し
Sheets("データ").Cells.CurrentRegion.AutoFilter 3, R.Value
Range("B2").CurrentRegion.Select
Selection.Resize(Selection.Rows.Count - 1).Offset(1).Copy
Sheets("氏名").Select
Range("A65536").End(xlUp).Offset(1).Select
ActiveSheet.Paste
Next
End Sub
>シート1に下記のようにデータ(約300件)が入力されています。
>A B C D E F
>日付 勤務地 氏名 実働 金額 計
>7/1 ○ 山田 7h 10,000 7,000
>7/2 △ 北野 7h 10,000 7,000
>7/3 □ 山田 7h 10,000 7,000
>7/3 ○ 森 7h 10,000 7,000
>
>
> ↓ これを別シートへ シート名は”氏名”にしたい)
>
>日付 勤務地 氏名 実働 金額 計
>7/1 ○ 山田 7h 10,000 7,000
>7/3 □ 山田 7h 10,000 7,000
>
>今までは、オートフィルターで氏名を抽出して、各シートへ
>コピペしていましたが、人数がかなり多くなってきまして大変に
>なってきました。
>これを VBAで簡単にする方法をお教えください。
>説明は上手にできていますか・・・
|
|