エクセルマクロVBAについて
エクセルマクロVBAについて、こんなこと出来ますか?
■A列からAS列の1行目にヘッダー情報をもつデータベース
■A列に担当者名
■A列にオートフィルタをかけて各担当ごとにデータを抽出したものを別シートに貼り付けて自動印刷したい
■担当者は都度変わるので、Criteria1:="xxx"というようには直接書けない(担当名を自動で抽出したい)
■担当者の数も都度変わる
■補足 一行のデータを特定の雛形に転記する必要があるので別シートに出したいです
ちなみに、アナログで記録したコードは以下です。
Sub test1()
Sheets("データ抽出シート").Select
ActiveSheet.Range("$A$1:$AS$300").AutoFilter Field:=1, Criteria1:="山田"
Range("$A$1:$AS$300").Select
Selection.Copy
Sheets("抽出データ貼付シート").Select
Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveWindow.SelectedSheets.PrintOut Copies:=1
Sheets("データ抽出シート").Select
ActiveSheet.Range("$A$1:$AS$300").AutoFilter Field:=1, Criteria1:="斉藤"
Range("$A$1:$AS$300").Select
Selection.Copy
Sheets("抽出データ貼付シート").Select
Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveWindow.SelectedSheets.PrintOut Copies:=1
Sheets("データ抽出シート").Select
ActiveSheet.Range("$A$1:$AS$300").AutoFilter Field:=1, Criteria1:="田中"
Range("$A$1:$AS$300").Select
Selection.Copy
Sheets("抽出データ貼付シート").Select
Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveWindow.SelectedSheets.PrintOut Copies:=1
End Sub
これ、担当者の抽出を自動でなんとかなりませんか?
お礼
ありがとうございました。 できました。 一度試したときにはできなかったので、おかしいと思っていたのですが、たぶん私の入力ミスだったのでしょうね。 助かりました。