hoangpheo290193
Thành viên mới
- Tham gia
- 20/11/19
- Bài viết
- 31
- Được thích
- 1
Em có ý tưởng muốn in hàng loạt nhiều sheet bằng VBA. Em đã viết code và chạy thử nhưng có vấn đề. Tuy em đã in được rồi nhưng lại xảy ra vấn đề về biến t, nó chạy không theo ý em lắm, Em chia sẻ lên đây nhờ các bác giúp em với ạ.
Code nó như thế này:
'''''
Private Sub cmb_inan2_Click()
Dim t As Integer
Dim s1 As Worksheet
Dim S2 As Worksheet
Set s1 = Sheets("A2")
Set S2 = Sheets("A4")
For t = tb3.Text To tb4.Text
Range("U1").Value = t
Sheets("CD").Select
Range("r23:r143").Select
Selection.AutoFilter
ActiveSheet.Range("r23:r143").AutoFilter Field:=1, Criteria1:="1"
Sheets(Array("A1", "A2", "A4","CD")).Select
ActiveWindow.SelectedSheets.PrintOut
Sheets("A1").Select
Next
End Sub
.......
Mục đích in hàng loạt của em các sheet đã đạt được. Tuy nhiên, em có vướng một số điều mà em vẫn chưa giải quyết được, đúng như mong muốn của em.
Đó là ví dụ khi biến t chạy từ 1 đến 3, khi biến t=2, em muốn excel chỉ in cho em sheets A1, A2, A4 nhưng không in sheets CD hoặc cũng có thể khi biến t chạy từ 4 đến 6, khi biến t=6 thì chỉ in sheets A1, A2. Các bác thông cảm cho cái mong muốn oái oăm của em vì em là dân xây dựng nên các sheet trên là các biên bản nghiệm thu, vì có công tác thì cần nhiều biên bản, có công tác thì cần ít biên bản, nên mới có chút lấn cấn như vậy.
Các bác có thể bổ sung cho em thêm dòng code nào để em có thể làm theo cái mong muốn của mình không ạ. chứ nếu làm theo cách của em in hàng loạt ra, thì phí giấy lắm, với lại là mất công dò lại tờ giấy nào thừa rồi bỏ phí. Em cảm ơn các bác ạ!
Code nó như thế này:
'''''
Private Sub cmb_inan2_Click()
Dim t As Integer
Dim s1 As Worksheet
Dim S2 As Worksheet
Set s1 = Sheets("A2")
Set S2 = Sheets("A4")
For t = tb3.Text To tb4.Text
Range("U1").Value = t
Sheets("CD").Select
Range("r23:r143").Select
Selection.AutoFilter
ActiveSheet.Range("r23:r143").AutoFilter Field:=1, Criteria1:="1"
Sheets(Array("A1", "A2", "A4","CD")).Select
ActiveWindow.SelectedSheets.PrintOut
Sheets("A1").Select
Next
End Sub
.......
Mục đích in hàng loạt của em các sheet đã đạt được. Tuy nhiên, em có vướng một số điều mà em vẫn chưa giải quyết được, đúng như mong muốn của em.
Đó là ví dụ khi biến t chạy từ 1 đến 3, khi biến t=2, em muốn excel chỉ in cho em sheets A1, A2, A4 nhưng không in sheets CD hoặc cũng có thể khi biến t chạy từ 4 đến 6, khi biến t=6 thì chỉ in sheets A1, A2. Các bác thông cảm cho cái mong muốn oái oăm của em vì em là dân xây dựng nên các sheet trên là các biên bản nghiệm thu, vì có công tác thì cần nhiều biên bản, có công tác thì cần ít biên bản, nên mới có chút lấn cấn như vậy.
Các bác có thể bổ sung cho em thêm dòng code nào để em có thể làm theo cái mong muốn của mình không ạ. chứ nếu làm theo cách của em in hàng loạt ra, thì phí giấy lắm, với lại là mất công dò lại tờ giấy nào thừa rồi bỏ phí. Em cảm ơn các bác ạ!