Đặt trang in trong excel!!!!!

Liên hệ QC

chuotxinh

Thành viên mới
Tham gia
4/10/07
Bài viết
3
Được thích
0
Cho mình hỏi, trong sheet excel, làm sao để đặt số trang chỉ là 1 số trang chẵn 2,4,6 ......... hoặc số trang lẻ 1,3,5 khi in.

VD: 1 sheet excel của mình có 10 trang, làm sao để thứ tự các trang đó khi in ra ở phần Header là 1,3,5,7,9 hoặc 2,4,6,8,10 chứ ko phải theo thứ tự là 1,2,3,4,5........

Ai biết chỉ giúp mình với!
Tks nhiều!
 
chuotxinh đã viết:
Cho mình hỏi, trong sheet excel, làm sao để đặt số trang chỉ là 1 số trang chẵn 2,4,6 ......... hoặc số trang lẻ 1,3,5 khi in.

VD: 1 sheet excel của mình có 10 trang, làm sao để thứ tự các trang đó khi in ra ở phần Header là 1,3,5,7,9 hoặc 2,4,6,8,10 chứ ko phải theo thứ tự là 1,2,3,4,5........

Ai biết chỉ giúp mình với!
Tks nhiều!

bạn xem file này nhé! cái này có trên DiễnĐàn
 

File đính kèm

ongtrungducmx25 đã viết:
bạn xem file này nhé! cái này có trên DiễnĐàn
Bác hiểu sai ý rồi, đây không phải là in hết trang chẵn rồi đến trang lẻ (hoặc ngược lại )
VD : có 10 trang
In lần 1 : 1 ; 3; 5; 7 ;9-----Lần 2 : 2; 4; 6; 8; 10

Mà là chỉ có chẵn hoặc chỉ có lẻ :
- Hoặc là : 2; 4; 6; 8; 10; 12; 14; 16; 18; 20
- Hoặc là : 1; 3; 5; 7; 9; 11; 13; 15; 17; 19

Nếu dùng VBA thì cũng được, tuy hơi thủ công. Đó là nhờ vào
- From . . . to . . .
- First page number

Hoặc dùng VBA điền thẳng vào Header (Footer) luôn

Thân!
 
Mã:
[COLOR=darkblue]Private[/COLOR] [COLOR=darkblue]Sub[/COLOR] Workbook_BeforePrint(Cancel [COLOR=darkblue]As[/COLOR] [COLOR=darkblue]Boolean[/COLOR])
        [COLOR=darkblue]Dim[/COLOR] wsSheet [COLOR=darkblue]As[/COLOR] Worksheet
        [COLOR=darkblue]Dim[/COLOR] sHooter [COLOR=darkblue]As[/COLOR] [COLOR=darkblue]String[/COLOR]
        Application.EnableEvents = [COLOR=darkblue]False[/COLOR]
        [COLOR=darkblue]Set[/COLOR] wsSheet = ActiveSheet
            [COLOR=darkblue]With[/COLOR] wsSheet
            [COLOR=darkblue]For[/COLOR] i = 1 [COLOR=darkblue]To[/COLOR] ExecuteExcel4Macro("Get.Document(50)")
                [COLOR=green]'dong nay de in trang danh so chan[/COLOR]
                'sHooter = "Page: " & i * 2
                [COLOR=green]'dong nay de in trang danh so le[/COLOR]
                sHooter = "Page: " & i * 2 - 1
                .PageSetup.LeftHeader = sHooter
                .PrintOut from:=i, To:=i
            [COLOR=darkblue]Next[/COLOR]
            [COLOR=darkblue]End[/COLOR] [COLOR=darkblue]With[/COLOR]
        [COLOR=darkblue]Set[/COLOR] wsSheet = [COLOR=darkblue]Nothing[/COLOR]
        Cancel = [COLOR=darkblue]True[/COLOR]
        Application.EnableEvents = [COLOR=darkblue]True[/COLOR]
[COLOR=darkblue]End[/COLOR] [COLOR=darkblue]Sub[/COLOR]

Chuotxinh copy đoạn code trên vào Module của ThisWorkBook nhé

Ở trên đã để sẵn 2 dòng, bạn in trang lẻ thì thêm dấu ' vào đầu đoạn code sfooter = ...
như hiện giờ là in ra sẽ đánh số trang là lẻ

Code trên sẽ in toàn bộ các trang nhé, chưa làm phần điều khiển để bạn có thể in được các trang từ đâu đến đâu theo ý muốn.
 
chuotxinh đã viết:
@Mr Okebab: anh nói đúng, ý em là như vậy đấy ạ. Anh có thể chỉ em rõ hơn ko ạ?
bạn xem nhé, ý tưởng là thế, có gì cứ nói rõ thêm để chỉnh sửa.

PHP:
Option Explicit
Sub Intrang()
    On Error GoTo thoat
    Application.ScreenUpdating = False
    Dim STT As Integer
    Dim Trang As Integer
    Dim SoTrang As Integer
    Dim i As Integer
    
    Select Case MsgBox("- In Chan : YES" & Chr(10) & "- In Le : NO" & Chr(10) & "- Em nham : CANCEL", vbYesNoCancel, "Bebebe")
    Case vbYes
        i = 2
    Case vbNo
        i = 1
    Case vbCancel
        Exit Sub
    End Select
        SoTrang = Application.InputBox("ban muon in Bao nhieu trang ??", "Be be be", Type:=1)
    
    For STT = 1 To SoTrang
        If i = 2 Then
            Trang = STT * 2
        Else
            Trang = STT * 2 - 1
        End If
        ctiveSheet.PageSetup.CenterHeader = Trang
        ActiveWindow.SelectedSheets.PrintOut From:=STT, to:=STT
    Next
thoat:
    Application.ScreenUpdating = True
End Sub

Thân!
 

File đính kèm

@Soibien & Mr Okebab: tks 2 anh, chuột đã làm được cái này.

@ Soibien: cái phần điều khiển để in được từ trang ... đến trang ... nếu anh có thể tạo được thì share lên cho Chuột với nhé. Phần đó Chuột cũng cần lắm ạ. Tks anh trước nhé ^^

@Mr Okebab: code của anh tuyệt, in đúng là nó ra toàn chẵn hoặc toàn lẻ. Nhưng liệu có thể tạo 1 code in từ trang ........ đến trang ...... được ko anh ? Công việc của em cần có cái đó nhất ạ. Nếu in như file đính kèm của anh, ở lần in 2 nó sẽ in lại trang lần 1 em đã in.

Ở dưới em đính kèm file mà em đang làm, anh xem & reply lại em hen!

Ở file đó, anh sẽ thấy: phần header (khi print preview) có ghi "List số 1....". Khi nhập xong 1 list , ra lệnh in trang 1-1 (chẳng hạn), phần header nó sẽ "List số 1"
Em muốn in trang 2, phần header nó sẽ là "List số 3" , chứ ko phải "List số 2".

Anh có giải pháp nào ko, chỉ dùm em với!
Thanks!
 

File đính kèm

chuotxinh đã viết:
@Soibien & Mr Okebab: tks 2 anh, chuột đã làm được cái này.

@ Soibien: cái phần điều khiển để in được từ trang ... đến trang ... nếu anh có thể tạo được thì share lên cho Chuột với nhé. Phần đó Chuột cũng cần lắm ạ. Tks anh trước nhé ^^

@Mr Okebab: code của anh tuyệt, in đúng là nó ra toàn chẵn hoặc toàn lẻ. Nhưng liệu có thể tạo 1 code in từ trang ........ đến trang ...... được ko anh ? Công việc của em cần có cái đó nhất ạ. Nếu in như file đính kèm của anh, ở lần in 2 nó sẽ in lại trang lần 1 em đã in.

Ở dưới em đính kèm file mà em đang làm, anh xem & reply lại em hen!

Ở file đó, anh sẽ thấy: phần header (khi print preview) có ghi "List số 1....". Khi nhập xong 1 list , ra lệnh in trang 1-1 (chẳng hạn), phần header nó sẽ "List số 1"
Em muốn in trang 2, phần header nó sẽ là "List số 3" , chứ ko phải "List số 2".

Anh có giải pháp nào ko, chỉ dùm em với!
Thanks!
Ok, không thành vấn đề.

Em tham khảo nhé :

Thân!
 

File đính kèm

@Mr Okebab: Em lại phải làm phiền anh nữa rùi.

Hôm nay em đã đưa cái file anh hướng dẫn vào dùng thử, có 1 vấn đề nữa phát sinh, đó là số bản copy.

Trên phiên bản hiện tại của anh, khi em muốn in từ trang 1 đến trang 1 hoặc bất cứ trang nào # thêm bao nhiêu bản nữa, thì em phải ra lệnh in thêm tầng ấy lần.

Mình có thể in nhiều bản (từ trang ... đến trang ... ) trong 1 lần in được ko anh?

Anh giúp em nhé! Help me, please! -=.,,
Tks U!
 
chuotxinh đã viết:
@Mr Okebab: Em lại phải làm phiền anh nữa rùi.

Hôm nay em đã đưa cái file anh hướng dẫn vào dùng thử, có 1 vấn đề nữa phát sinh, đó là số bản copy.

Trên phiên bản hiện tại của anh, khi em muốn in từ trang 1 đến trang 1 hoặc bất cứ trang nào # thêm bao nhiêu bản nữa, thì em phải ra lệnh in thêm tầng ấy lần.

Mình có thể in nhiều bản (từ trang ... đến trang ... ) trong 1 lần in được ko anh?

Anh giúp em nhé! Help me, please! -=.,,
Tks U!

Em tham khảo nhé :

Thân!
 

File đính kèm

Cho mình hỏi ké: bảng excel của mình rộng hơn khổ in, khi in bị tách ra làm 2 trang, mình muốn hiển thị số trang trên 2 trang này giống nhau được ko, để tiện theo dõi số liệu tránh bị nhầm lẫn
thanks
 
Có cách nào in trong excel ngược lại như trong word hay không:
ví dụ: 20,18,16,14...
19,17,15,13...
 
Web KT

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

Back
Top Bottom