有4萬條數據,要求打印篩選過的數據,並且每一個篩選結果項打印一次,如圖,每一個人打印一次,這裏有5個人,那就需要打印5次,每頁的內容只能有一個人的數據
下面是我寫的宏
Sub printUser() Sheet2.Columns("A").Delete '從第一頁的C列中拷貝出所有不重複的數據到第二頁的A列中,這裏只需關注Sheet1.Columns("需要指定複製的列") Sheet1.Columns("D").AdvancedFilter Action:=xlFilterCopy, Unique:=True, CopyToRange:=Sheet2.Columns("A") Sheet2.Rows(1).Delete '================= 以上內容可拷貝到其它模塊中獨立運行 ========================== Dim i As Integer Dim filtValue As String Dim rowCount As Integer '因這裏會立即進行打印,所以建議進行測試操作,測試的時候請把等號後面的值改爲3,正式運行時等號後跟着Sheet2.UsedRange.Rows.Count rowCount = Sheet2.UsedRange.Rows.Count For i = 1 To rowCount filtValue = Sheet2.Cells(i, 1).Value '這裏的Field:=4代表篩選人的列序號,4代表D列 Sheet1.Range("A1").AutoFilter Field:=4, Criteria1:=filtValue Sheet1.PrintOut Next End Sub