Anh Chị giúp em đánh số trang trong các sheet của excel mới ạ!

Liên hệ QC

dangky47h

Thành viên thường trực
Tham gia
4/9/17
Bài viết
329
Được thích
41
Giới tính
Nam
Em có file Excel gồm nhiều Sheet, mỗi sheet gồm nhiều trang
Có 02 Vấn đề đặt ra:
1. Đánh số trang theo thứ tự từ 01 (trang đầu tiên của sheet đầu tiên) đến trang cuối cùng của sheet cuối cùng theo thứ tự sheet từ trái sang phải với định dạng là "trang 1, trang 2,....."
2. Đánh số trang theo thứ tự từ 01đến hết trang ở mỗi sheet và sang sheet mới lại bắt đầu từ số 01 cho đến hết trang của sheet đó
Anh, Chị giúp đỡ em đánh số trang trong file exel với 02 cách trên, E xin cảm ơn Ạ!
 
Em có file Excel gồm nhiều Sheet, mỗi sheet gồm nhiều trang
Có 02 Vấn đề đặt ra:
1. Đánh số trang theo thứ tự từ 01 (trang đầu tiên của sheet đầu tiên) đến trang cuối cùng của sheet cuối cùng theo thứ tự sheet từ trái sang phải với định dạng là "trang 1, trang 2,....."
2. Đánh số trang theo thứ tự từ 01đến hết trang ở mỗi sheet và sang sheet mới lại bắt đầu từ số 01 cho đến hết trang của sheet đó
Anh, Chị giúp đỡ em đánh số trang trong file exel với 02 cách trên, E xin cảm ơn Ạ!
Ý 1 có thể thực hiện được nhưng phải có file mẫu, còn ý 2 thì chưa biết cách.
 
Upvote 0
Ý 1 có thể thực hiện được nhưng phải có file mẫu, còn ý 2 thì chưa biết cách.
Vâng, Thầy giúp em cách 01 ạ! theo định dạng số trang là " Trang 01" bắt đầu từ trang đầu của sheet đầu tiên đến trang cuối của sheet cuối cùng, các sheet theo thứ tự từ trái qua phải
Em cảm ơn Thầy!
 

File đính kèm

  • Thanh Toan.xls
    2.8 MB · Đọc: 7
Upvote 0
Vâng, Thầy giúp em cách 01 ạ! theo định dạng số trang là " Trang 01" bắt đầu từ trang đầu của sheet đầu tiên đến trang cuối của sheet cuối cùng, các sheet theo thứ tự từ trái qua phải
Em cảm ơn Thầy!
Chỉ đánh Trang 1, Trang 2... chứ đánh theo dạng Trang 01, Trang 02... thì thua nhé.
 
Upvote 0
Dạ! hi ...theo Trang 1, Trang 2 Thầy Ạ! Thầy giúp e ạ!
Trước khi thực hiện thì phải làm rõ vấn đề này trước.
Thứ 1: Trong file bạn có rất nhiều sheet (Đã ẩn), nhưng bạn chỉ đánh số trang có 3 sheet (Đang hiển thị) phải không?
Thứ 2: Tôi rất kỵ việc đặt tên sheet bằng tiếng việt có dấu, nên sẽ giúp nếu đổi lại tên sheet.
 
Upvote 0
Trước khi thực hiện thì phải làm rõ vấn đề này trước.
Thứ 1: Trong file bạn có rất nhiều sheet (Đã ẩn), nhưng bạn chỉ đánh số trang có 3 sheet (Đang hiển thị) phải không?
Thứ 2: Tôi rất kỵ việc đặt tên sheet bằng tiếng việt có dấu, nên sẽ giúp nếu đổi lại tên sheet.
Vâng, 3 sheet hiện thôi Thầy ạ!
 
Upvote 0
gửi bạn phương án
B1: giữ Shift + Kích các trang cần in (định dạng hợp lí theo ý bạn trước khi chọn không nó sẽ dễ bị lỗi đấy nhé)
B2: CTRL+ P, ra Print, chọn "Page setup" xanh ở cuối cùng
chọn header/footer -> custom footer.
Chọn vị trí trái phải hay giữa, ghõ "Trang" sau đó ấn biểu tượng có hình "#" -> OK
Bạn xem bên preview ok chưa.
Nếu có vấn đề gì nữa thì bảo mình :)
Mong góp ý thêm
 
Upvote 0
Vâng Em cám ơn Thầy, Thầy cho Em hỏi một chút nữa ạ!
Giờ có thêm Sheet thì code đó có phải sửa phần nào để chạy được ạ!

Cái này sao phải code nhỉ. Muốn in nhiều sheet thì chọn 1 lượt nhiều sheet rồi vào Page setup mà set trang in thì mặc nhiên nó tự động tăng theo...
 
Upvote 0
Upvote 0
có 2 trang là trang số 8 ở 2 sheet TTGD3 và TTGD4
Sửa code lại thế này.
Mã:
Public Sub Insert_Pages()
Dim Trang As Integer, j As Integer
Trang = 0
For i = 1 To 3
    With Sheets("TTGD" & (i + 1))
        .Activate
        ActiveWindow.View = xlPageBreakPreview
        With ActiveSheet.PageSetup
            .CenterFooter = "Trang &P"
            .FirstPageNumber = Trang + 1
        End With
        Trang = Trang + (ActiveSheet.HPageBreaks.Count + 1) * (ActiveSheet.VPageBreaks.Count + 1)
        ActiveWindow.View = xlNormalView
    End With
Next i
Sheets("TTGD2").Select
End Sub
Vâng Em cám ơn Thầy, Thầy cho Em hỏi một chút nữa ạ!
Giờ có thêm Sheet thì code đó có phải sửa phần nào để chạy được ạ!
Nếu thêm sheet thì phải coi tên sheet như thế nào, bạn chú ý 2 dòng này.
Mã:
For i = 1 To 3
    With Sheets("TTGD" & (i + 1))
 
Upvote 0
Sửa code lại thế này.
Mã:
Public Sub Insert_Pages()
Dim Trang As Integer, j As Integer
Trang = 0
For i = 1 To 3
    With Sheets("TTGD" & (i + 1))
        .Activate
        ActiveWindow.View = xlPageBreakPreview
        With ActiveSheet.PageSetup
            .CenterFooter = "Trang &P"
            .FirstPageNumber = Trang + 1
        End With
        Trang = Trang + (ActiveSheet.HPageBreaks.Count + 1) * (ActiveSheet.VPageBreaks.Count + 1)
        ActiveWindow.View = xlNormalView
    End With
Next i
Sheets("TTGD2").Select
End Sub

Nếu thêm sheet thì phải coi tên sheet như thế nào, bạn chú ý 2 dòng này.
Mã:
For i = 1 To 3
    With Sheets("TTGD" & (i + 1))
Vâng, em cám ơn thầy, thầy ơi em hỏi chút vấn đề liên quan đến chủ đề đánh số trang (như hình ảnh đính kèm1.jpg1.jpg) khi privew để xem thì số trang nó không chạy
 
Upvote 0
Sửa code lại thế này.
Mã:
Public Sub Insert_Pages()
Dim Trang As Integer, j As Integer
Trang = 0
For i = 1 To 3
    With Sheets("TTGD" & (i + 1))
        .Activate
        ActiveWindow.View = xlPageBreakPreview
        With ActiveSheet.PageSetup
            .CenterFooter = "Trang &P"
            .FirstPageNumber = Trang + 1
        End With
        Trang = Trang + (ActiveSheet.HPageBreaks.Count + 1) * (ActiveSheet.VPageBreaks.Count + 1)
        ActiveWindow.View = xlNormalView
    End With
Next i
Sheets("TTGD2").Select
End Sub

Nếu thêm sheet thì phải coi tên sheet như thế nào, bạn chú ý 2 dòng này.
Mã:
For i = 1 To 3
    With Sheets("TTGD" & (i + 1))
Thầy ơi Em có tham khảo đoạn code đánh số trang như thế này, những định dạng của nó là"1, 2,..."
Thầy chỉ giáo dùm em có cách nào để sửa định dạng khi đánh số trang thành"Trang 1, trang 2 .."
Sub DSTrang()

Dim i As Byte, j As Byte

Dim cp As Byte

Dim trangdau As Variant

Dim Sh As Worksheet

Application.ScreenUpdating = False

lai:

trangdau = InputBox(Prompt:="Danh so trang", Title:="Nhap trang dau tien!", Default:="0")

If trangdau <= 0 Or IsNumeric(trangdau) = False Then

MsgBox "Nhap lai trang dau"

GoTo lai

End If

For Each Sh In ActiveWorkbook.Worksheets

Sh.Activate

With ActiveSheet.PageSetup

'.LeftFooter = ""

.CenterFooter = "&P"

'.RightFooter = ""

.FirstPageNumber = trangdau

'.PrintErrors = xlPrintErrorsDisplayed

End With

trangdau = trangdau + ExecuteExcel4Macro("Get.Document(50)")

Next

MsgBox "OK"

Application.ScreenUpdating = True

End Sub
Bài đã được tự động gộp:

Tôi chưa thấy trường hợp này, bạn cài TeamView để xem thử thế nào.
Vâng, cho Em hỏi Thầy dùng TeamView bao nhiêu ạ!
Bài đã được tự động gộp:

Tôi chưa thấy trường hợp này, bạn cài TeamView để xem thử thế nào.
840 514 733
3062
Nhờ Thầy vào TeamView xem giúp Em ạ! E cám ơn Thầy
 
Lần chỉnh sửa cuối:
Upvote 0
Thầy ơi Em có tham khảo đoạn code đánh số trang như thế này, những định dạng của nó là"1, 2,..."
Thầy chỉ giáo dùm em có cách nào để sửa định dạng khi đánh số trang thành"Trang 1, trang 2 .."
Bạn sửa code thế này, thay đoạn
Mã:
.CenterFooter = "&P"
thành
Mã:
.CenterFooter = "Trang &P"
 
Upvote 0
Tôi chưa thấy trường hợp này, bạn cài TeamView để xem thử thế nào.
Đúng rồi thầy ạ! do Em để bản Oficie tiếng Việt nên bị vậy! E chuyển sang bản tiếng Anh thì không bị lỗi vậy nữa, Em cám ơn Thầy nhiều!
Bài đã được tự động gộp:

Bạn sửa code thế này, thay đoạn
Mã:
.CenterFooter = "&P"
thành
Mã:
.CenterFooter = "Trang &P"
Vâng, đã Ok Thầy ạ! Cám ơn Thầy.
Bài đã được tự động gộp:

gửi bạn phương án
B1: giữ Shift + Kích các trang cần in (định dạng hợp lí theo ý bạn trước khi chọn không nó sẽ dễ bị lỗi đấy nhé)
B2: CTRL+ P, ra Print, chọn "Page setup" xanh ở cuối cùng
chọn header/footer -> custom footer.
Chọn vị trí trái phải hay giữa, ghõ "Trang" sau đó ấn biểu tượng có hình "#" -> OK
Bạn xem bên preview ok chưa.
Nếu có vấn đề gì nữa thì bảo mình :)
Mong góp ý thêm
E cám ơn hi, e làm được rồi, do Oficie em để tiếng việt, may quá có Thầy giúp đỡ, chia sẻ lên để mọi người có gặp còn biết xử lý!
 
Lần chỉnh sửa cuối:
Upvote 0
Web KT
Back
Top Bottom