in bảng tính

Thảo luận trong 'Ứng dụng Excel' bắt đầu bởi quanghn, 14 Tháng ba 2006.

1,861 lượt xem

  1. quanghn

    quanghn Thành viên sơ cấp

    Bài viết:
    13
    Đã được thích:
    0
    Nơi ở:
    Đồng hới - Quảng bình
    chào các bác. bác nào có thể cho em một chương trình viết bằng VBA dùng để in các Sheet trong bảng tính được không ạ và có cả ô để chọn số lượng copy của các trang nữa. Em cám ơn các bác nhiều
     
    #1
  2. Bình_OverAC

    Bình_OverAC Over Abnormal / Crazy

    Bài viết:
    845
    Đã được thích:
    7
    Nơi ở:
    Nha Trang
    Có thêm tuỳ chọn này cho việc in của mỗi sheet không bác nhỉ?
     
    #2
  3. quanghn

    quanghn Thành viên sơ cấp

    Bài viết:
    13
    Đã được thích:
    0
    Nơi ở:
    Đồng hới - Quảng bình
    Sao không thấy bác nào giúp em với ạ. Em đang tập học lập trình VBA và đang làm thử một chương trình nhưng đang bí đoạn này mong các bác giúp đỡ. Mong sớm nhận trả lời của các bác
     
    #3
  4. HongViet

    HongViet Thành viên thân thiết

    Bài viết:
    286
    Đã được thích:
    10
    Nơi ở:
    Đà nẵng
    Sub InAn()
    ' InAn Macro, Macro recorded 20/03/2006 by Hong Viet
    Dim i2 As Byte
    i2 = 2
    ActiveWindow.SelectedSheets.PrintPreview
    ActiveWindow.SelectedSheets.PrintOut From:=1, To:=1, Copies:=i2, Collate _
    :=True
    End Sub
    'Theo Mình Nghỉ: Bạn có thể gán biến số trang cần in & số bản in = ComboBox; Nhưng nói trước rằng, mình chưa làm thử bao giờ!
     
    Last edited: 21 Tháng ba 2006
    #4
  5. Đào Việt Cường

    Đào Việt Cường Moderator

    Bài viết:
    400
    Đã được thích:
    3
    Giới tính:
    Nam
    Nơi ở:
    Khánh Hòa
    Dear all,
    --------
    Tôi có một báo giá trong đó có rất nhiều sheet (tương ứng với mỗi thương hiệu). Đôi khi tôi muốn in toàn bộ các báo giá này. Excel cho phép ta in Entire Workbook. Tuy vậy mỗi báo giá được đánh số trang Page/Pages nên không thể chọn tất cả các sheet để in đồng loạt được vì vậy, theo tôi hiểu trong trường hợp này, chúng ta buộc phải sử dụng phương thức PrintOut/PrintPreview của từng sheet. Tôi đã viết thủ tục Click cho command box cmbPrintAll như sau, muốn chia sẻ cùng các bạn:
    Để sử dụng được thủ tục này, các bạn cần định nghĩa một số Name như sau:
    - MessgaseBox=0/1: bật/tắt thông điệp hỏi đáp tương tác với người dùng trong những trường hợp cần thiết (Default= 0: Không bật cảnh báo)
    - SoBG= String bất kỳ: đây là thành phần cố định của số báo giá, ví dụ "BG0306/", chuỗi này được kết hợp với chỉ số của từng báo giá tạo lên số báo giá hoàn chỉnh ("BG0306/001","BG0306/002","BG0306/..."
    - Begin (number<= số lượng báo giá, không vượt quá số sheet trong workbook): số thứ tự của báo giá bắt đầu in
    - End (number<= số lượng báo giá, không vượt quá số sheet trong workbook): số thứ tự của báo giá cuối cùng
    - PrintPreview=0/1: In ra giấy hay xem trước khi in (Default = 1: xem trước khi in).
    - CopyCount (number): Số bản in ra giấy
    Nhược điểm của thủ tục này là chỉ in các sheet theo dãy liên tục. Các bạn có thể cải tiến để có thêm lựa chọn in các sheet mà mình muốn.
    Chúc các bạn thành công!
     
    Last edited: 3 Tháng tư 2006
    #5

Chia sẻ trang này