- Tham gia
- 30/12/06
- Bài viết
- 918
- Được thích
- 2,370
- Nghề nghiệp
- Giáo viên
Trong Word cho phép chọn in trang chẳn, lẻ. Nhưng Excel không hỗ trợ cách in này. Nhiều bạn đã hỏi và có nhiều bài viết về vấn đề này. Từ một code chọn trang in, tôi phát triển thêm để có thể:
- Báo tổng số trang trong sheet.
- Chọn in tất cả ALL
- Chọn in trang chẳn CHAN
- Chọn in trang lẻ LE
- In từ trang đến trang
Đây là tập tin XLA nên bạn không thấy nó trên màn hình. Muốn in bấm Ctrl+Shift+P
- Báo tổng số trang trong sheet.
- Chọn in tất cả ALL
- Chọn in trang chẳn CHAN
- Chọn in trang lẻ LE
- In từ trang đến trang
Đây là tập tin XLA nên bạn không thấy nó trên màn hình. Muốn in bấm Ctrl+Shift+P
Mã:
Sub PrintPage()
'
' PrintPage Macro
' Macro recorded 24/03/2008 by Pham Duy Long
'
' Keyboard Shortcut: Ctrl+Shift+P
'
Dim n As Integer, i As Integer
n = ExecuteExcel4Macro("Get.Document(50)")
tb = "Sheet [" & ActiveSheet.Name & "] co tat ca " & n & " trang" & _
Chr(13) & "Chon trang in:" & Chr(13) & _
" ALL : in tat ca CHAN : in trang chan LE : in trang le" & Chr(13) & _
" 1-" & n & " : in tu trang 1 den trang " & n
sotrang = Trim(UCase(Application.InputBox(tb, "In trang", , , , , , 2)))
Select Case sotrang
Case "FALSE", ""
Exit Sub
Case "ALL"
ActiveWindow.SelectedSheets.PrintOut
Case "CHAN"
For i = 2 To n Step 2
ActiveWindow.SelectedSheets.PrintOut From:=i, To:=i
Next
Case "LE"
For i = 1 To n Step 2
ActiveWindow.SelectedSheets.PrintOut From:=i, To:=i
Next
Case Else
dau = Val(sotrang)
cuoi = Val(Mid(sotrang, InStr(sotrang, "-") + 1))
If cuoi = 0 Then cuoi = dau
If dau * cuoi = 0 Or cuoi < dau Then
MsgBox "Nhap so trang " & sotrang & " sai !"
Else
If dau > n Then dau = n
If cuoi > n Then cuoi = n
ActiveWindow.SelectedSheets.PrintOut From:=dau, To:=cuoi
End If
End Select
End Sub