In tất cả trang 1,... của nhiều sheet

  • Thread starter Anhchuot
  • Ngày gửi
A

Anhchuot

Lên thớt...
23/7/03
361
1
18
Hanoi
www.
#1
Các bác cho AC hỏi có cách nào in được tất cả các trang từ 1-n của nhiều sheet cùng một lúc ko nhỉ? (giả sử AC cần in trang 1 của 12 sheet trong tổng số 18 sheet)

AC tìm mãi trong pupv6... mà ko thấy, có cách nào ko ạ?

Thanks các bác.
 
L

levanduyet

Welcome
16/10/04
535
11
18
HCM
my.opera.com
#2
Chào,
Nếu bạn cần thì mình có thể viết thủ tục cho bạn.
Chúc bạn khoẻ.
Lê Văn Duyệt
 
A

Anhchuot

Lên thớt...
23/7/03
361
1
18
Hanoi
www.
#3
Dạ, cám ơn anh. Nếu ko ảnh hưởng thì hy vọng được anh giúp đỡ. Là vì AC hay phải in 12 tháng của đủ các kiểu báo cáo, sổ sách... , cứ mỗi lần in, kích mỏi, mất thời gian lắm ạ.
 
W

WhoamI

Thành viên thân thiết
#4
Em thường phải Set print area trang 1 của từng sheet sau đó Group các sheet cần in như yêu cầu của chị.(giữ Ctrl + dùng chuột di chuyển đến các sheet cần in). Chắc cũng là cách chị đang làm và vẫn mất công lắm. Vậy nếu có được đoạn mã của anh Duyệt thì tuyệt quá!
 
B

Bình_OverAC

Over Abnormal / Crazy
14/5/04
845
7
18
37
Nha Trang
#5
Theo em thấy thì làm theo cách của WhoamI la được và hay rồi.
Chọn nhiều Sheet bằng cách giữ Ctrl sau đó vào Ctrl + P để ra lệnh in
Chọn "Selection" trong frame "Print what" hoặc nhấn tổ hợp Alt + n
Thế là xong.
Nếu thế không xong có nghĩa là em chưa chiều cách của chị Anhchuot. Nếu thế Chị Anhchuot mô tả kỷ hơn nhé.
 
F

ForestC

Thành viên sơ cấp
11/1/05
377
1
0
39
E'rywhere
#6
Anh Duyệt ơi, có phải source code của việc đó như thế này không ạ, có điều là em mới chỉ ví dụ thế thôi, việc còn phải làm nữa là: tên các sheet không phải là như thế, vâng, để hoàn thiện thì khi cái Sheets("Sheet1").Select phải trả về tên của sheet thứ nhất phải không ạ? và đoạn mã này chưa được bẫy lỗi tý nào..., nếu anh đã hoàn thiện đoạn mã của công việc này rồi thì cho em xin để em thao khảo học hỏi thêm nhé, cảm ơn anh trước ...

Sub Macro2()
Sheets("Sheet1").Select
ActiveWindow.SelectedSheets.PrintOut From:=1, To:=1, Copies:=1, Collate _
:=True
Sheets("Sheet2").Select
ActiveWindow.SelectedSheets.PrintOut From:=1, To:=1, Copies:=1, Collate _
:=True
Sheets("Sheet3").Select
ActiveWindow.SelectedSheets.PrintOut From:=1, To:=1, Copies:=1, Collate _
:=True
Sheets("Sheet4").Select
ActiveWindow.SelectedSheets.PrintOut From:=1, To:=1, Copies:=1, Collate _
:=True
Sheets("Sheet5").Select
ActiveWindow.SelectedSheets.PrintOut From:=1, To:=1, Copies:=1, Collate _
:=True
Sheets("Sheet6").Select
ActiveWindow.SelectedSheets.PrintOut From:=1, To:=1, Copies:=1, Collate _
:=True
Sheets("Sheet7").Select
ActiveWindow.SelectedSheets.PrintOut From:=1, To:=1, Copies:=1, Collate _
:=True
Sheets("Sheet8").Select
ActiveWindow.SelectedSheets.PrintOut From:=1, To:=1, Copies:=1, Collate _
:=True
Sheets("Sheet9").Select
ActiveWindow.SelectedSheets.PrintOut From:=1, To:=1, Copies:=1, Collate _
:=True
Sheets("Sheet10").Select
ActiveWindow.SelectedSheets.PrintOut From:=1, To:=1, Copies:=1, Collate _
:=True
Sheets("Sheet11").Select
ActiveWindow.SelectedSheets.PrintOut From:=1, To:=1, Copies:=1, Collate _
:=True
Sheets("Sheet12").Select
ActiveWindow.SelectedSheets.PrintOut From:=1, To:=1, Copies:=1, Collate _
:=True
End Sub
 
Sửa lần cuối:
Thích: Thai.Nguyen
L

levanduyet

Welcome
16/10/04
535
11
18
HCM
my.opera.com
#7
MaiCa nói:
Anh Duyệt ơi, có phải source code của việc đó như thế này không ạ, có điều là em mới chỉ ví dụ thế thôi, việc còn phải làm nữa là: tên các sheet không phải là như thế, vâng, để hoàn thiện thì khi cái Sheets("Sheet1").Select phải trả về tên của sheet thứ nhất phải không ạ? và đoạn mã này chưa được bẫy lỗi tý nào..., nếu anh đã hoàn thiện đoạn mã của công việc này rồi thì cho em xin để em thao khảo học hỏi thêm nhé, cảm ơn anh trước ...

Sub Macro2()
Sheets("Sheet1").Select
ActiveWindow.SelectedSheets.PrintOut From:=1, To:=1, Copies:=1, Collate _
:=True
Sheets("Sheet2").Select
ActiveWindow.SelectedSheets.PrintOut From:=1, To:=1, Copies:=1, Collate _
:=True
Sheets("Sheet3").Select
ActiveWindow.SelectedSheets.PrintOut From:=1, To:=1, Copies:=1, Collate _
:=True
Sheets("Sheet4").Select
ActiveWindow.SelectedSheets.PrintOut From:=1, To:=1, Copies:=1, Collate _
:=True
Sheets("Sheet5").Select
ActiveWindow.SelectedSheets.PrintOut From:=1, To:=1, Copies:=1, Collate _
:=True
Sheets("Sheet6").Select
ActiveWindow.SelectedSheets.PrintOut From:=1, To:=1, Copies:=1, Collate _
:=True
Sheets("Sheet7").Select
ActiveWindow.SelectedSheets.PrintOut From:=1, To:=1, Copies:=1, Collate _
:=True
Sheets("Sheet8").Select
ActiveWindow.SelectedSheets.PrintOut From:=1, To:=1, Copies:=1, Collate _
:=True
Sheets("Sheet9").Select
ActiveWindow.SelectedSheets.PrintOut From:=1, To:=1, Copies:=1, Collate _
:=True
Sheets("Sheet10").Select
ActiveWindow.SelectedSheets.PrintOut From:=1, To:=1, Copies:=1, Collate _
:=True
Sheets("Sheet11").Select
ActiveWindow.SelectedSheets.PrintOut From:=1, To:=1, Copies:=1, Collate _
:=True
Sheets("Sheet12").Select
ActiveWindow.SelectedSheets.PrintOut From:=1, To:=1, Copies:=1, Collate _
:=True
End Sub
Xin lỗi tất cả! Dạo này mình bị "stress" nhiều quá nên trả lời hơi chậm! Đoạn code nó cũng gần như trên nhưng cần phải thêm một số cái như:
_Vòng lập để kiểm tra tên các sheet theo yêu cầu.
_Kiểm tra tên Activesheet nếu có yêu cầu.
_Thêm bẫy lỗi.
....và những gì mà bạn muốn.
Chúc các bạn thành công.
Lê Văn Duyệt
 
T

Tuanktcdcn

Lão già ham vui
18/6/04
548
51
28
41
Hà Nội
www.bluesofts.net
#8
Bạn thử record một Macro và làm điều bạn muốn cho khoảng 2-3 sheet sau đó Stop lại. Bạn mở Macro đó ra xem cách nó làm, sau đó bạn có thể sửa chữa lại- Đây cũng là cách học VBA nhanh nhất.
 
L

loilatoi

Thành viên sơ cấp
18/2/16
1
0
1
33
#9

Thành viên trực tuyến

Không có thành viên trực tuyến.

Xem nhiều