Các bác có thể giúp tôi xử lý đoạn code trong file này?

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

Trojan

Thành viên hoạt động
Tham gia
13/3/08
Bài viết
162
Được thích
78
Mục đích của tôi là chèn dưới mỗi điểm cuối của trang một đoạn footer như định sẵn trong file. Tuy nhiên khi chạy nó cứ bị nhảy trang không đúng vị trí. Trình độ của tôi gà, chưa tìm ra lỗi mong anh em giúp đỡ. Xin cảm ơn nhiều.
 

File đính kèm

Nhờ các mem:

PHP:
Private Sub AddFooter()
Application.ScreenUpdating = False
Dim myPage As HPageBreak, iP As Integer, iRb As Integer, iRe As Integer, nRbt As Integer, iReE As Integer
Dim nP, i As Integer
Dim x, cot As String
Dim z, A, B As Single
x = MsgBox("Neu chay chuong trinh nay se khong undo duoc va se xoa tat ca cac dong nao co ham subtotal, ban van muon thuc hien?", vbYesNo, "Nguyen Duy Cong")
If x = vbNo Then
    Exit Sub
Else
    ActiveSheet.Cells.RemoveSubtotal
    iRb = Application.InputBox("Nhap dong bat dau cua sheet can chay", "Nguyen Duy Cong", "2")
    cot = Application.InputBox("Nhap cot can tao ham subtotal cho bang cua ban", "Nguyen Duy Cong", "f")
    Selection.SpecialCells(xlCellTypeLastCell).Select
    iReE = ActiveCell.Row
    nRbt = TEMP.Range("footer").Rows.Count
    nP = ActiveSheet.HPageBreaks.Count
    z = Range("footer").RowHeight
    With ActiveSheet
            For iP = 1 To nP
            If maxCT() - caotrang(iP) - z > 0 Then
                iRe = ActiveSheet.HPageBreaks(iP).Location.Row
                TEMP.Range("footer").Copy
                Rows(iRe).Insert xlShiftDown, True
                .Range(cot & iRe + 1).Formula = "=SUBTOTAL(9," & cot & iRb & ":" & cot & (iRe - 1) & ")"
                iRb = iRe + nRbt 'check lai dong nay
            Else
                i = 1
                iRe = ActiveSheet.HPageBreaks(iP).Location.Row
                A = Range(iRe & ":" & iRe).RowHeight
                Do Until maxCT() - caotrang(iP) - z + A > 0
                    A = A + Range(iRe - i & ":" & iRe - i).RowHeight
                    i = i + 1
                Loop
                TEMP.Range("footer").Copy
                Rows(iRe - i).Insert xlShiftDown, True
                .Range(cot & iRe - i + 1).Formula = "=SUBTOTAL(9," & cot & iRb & ":" & cot & (iRe - 1) & ")"
                iRb = iRe + nRbt
            End If
            Next iP
    End With
End If
Application.CutCopyMode = False
Application.ScreenUpdating = True
End Sub
 
Upvote 0
Web KT

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

Back
Top Bottom