Nhờ giúp đỡ về việc chỉ in ra máy in các sheet có dữ liệu

  • Thread starter Thread starter kinjodn
  • Ngày gửi Ngày gửi
Liên hệ QC

kinjodn

Thành viên mới
Tham gia
23/10/09
Bài viết
11
Được thích
0
Công việc mình cần xuất ra in file trong các sheet như số lượng quá nhiều. Có bạn nào giúp đỡ viết dùm cho code. Nội dung chỉ in ra máy in các sheets có dữ liệu thông tin các nhân. Vì in ra các sheets không có dữ liệu thì quá lãng phí giấy và mực in. Mình xin cảm ơn rất nhiều./.
 

File đính kèm

Chào @kinjodn, mình có tải về và xem qua tệp của bạn.
Vì là a-ma-tơ nên chỉ giải quyết một phần bài toán. Mong các thành viên khác đóng góp thêm, giúp đỡ cho hoàn thiện.

1-Đã giải quyết được
# Xác định sheet nào cần được in : dựa vào giá trị ô B10.
  • B10 = 1 : in sheet;
  • B10 rỗng : không in sheet;
Mã:
Sub GPE105438_v1()
    Dim Sh As Worksheet
    Dim iPageCount As Integer
    For Each Sh In ActiveWorkbook.Worksheets
        If Sh.Range("B10").Value = 1 Then
            Sh.PrintOut
        End If
    Next
End Sub

2-Chưa giải quyết được
# Xác định in trang nào của sheet.
  • Đa số các sheet có 1 trang dữ liệu cần in;
  • Tuy nhiên, khi xem trước (preview) thì số trang (được Excel tính toán sẽ được) in là từ 2 trở lên;
Mã:
Sub GPE105438_v2()
    Dim Sh As Worksheet
    Dim iPageCount As Integer
    For Each Sh In ActiveWorkbook.Worksheets
        If Sh.Range("B10").Value = 1 Then
            Sh.Rows("10:100").RowHeight = 25 'Thiet lap lai do cao dong 10 tro di
            iPageCount = ExecuteExcel4Macro("Get.Document(50)") 'Tinh toan so trang can in
            iPageCount = IIf(iPageCount = 1, 1, iPageCount - 1) 'Tinh toan so trang can in
            Sh.PrintOut From:=1, To:=iPageCount
        End If
    Next
End Sub

3-Đề xuất
# Thiết lập lại trang in trên phần mềm (gọi tắt là PM : phần mềm viết riêng cho nghiệp vụ, mà trích xuất ra Excel) sao cho phù hợp (khít/giống) với Excel.
# Trên PM, có thể bỏ phần footer (trang: #);
# Trên PM, xem lại độ cao của các dòng có dữ liệu cá nhân (từ dòng thứ 10 trở đi);
 
Lần chỉnh sửa cuối:
Căm ơn bạn rất nhiều. Vấn đề của mình đã được bạn giải quyết đa số và nhanh chóng.
 
Web KT

Bài viết mới nhất

Back
Top Bottom