Nhờ giúp đỡ câu lệnh in theo điều kiện. (1 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

Tôi tuân thủ nội quy khi đăng bài

Pi-Pikachu

Thành viên chính thức
Tham gia
22/2/21
Bài viết
71
Được thích
22
Xin chào các bạn.
Nhờ các bạn giúp đỡ em câu lệnh in này với.

1671868930225.png
Em xin cảm ơn.
 

File đính kèm

Kết hợp công thức và macro cho đơn giản.
--
Công thức mảng tại B3, copy ra B3:C6
Mã:
=IFERROR(INDEX($E$3:$E$5;MATCH($A$1*8-8+ROW(A1)*2-2+COLUMN(A1);MMULT(IF(ROW($F$3:$F$6)>=TRANSPOSE(ROW($F$3:$F$6));1;0);$F$3:$F$6+0)-$F$3:$F$6+1));"")
Code in
Mã:
Sub InIn()
    Dim i As Long
    Application.Calculation = xlCalculationAutomatic
    For i = 1 To Int((Application.Sum(Sheet1.Range("F3:F5")) - 1) / 8) + 1
        Sheet1.Range("A1").Value = i
        Sheet1.PrintPreview
    Next
End Sub
 
Upvote 0
Nhờ các bạn giúp đỡ em câu lệnh in này với.
Thêm cách khách tham khảo:
Mã:
Sub ABC()
    Dim sArr(), i&,  N&, c%, r%, ii&
    With Sheets("Sheet1")
        sArr = .Range("E3:F" & .Range("E" & Rows.Count).End(3).Row).Value
        For i = 1 To UBound(sArr)
            For ii = 1 To sArr(i, 2)
                If N = 0 Then .Range("B3:C6").ClearContents
                N = N + 1
                If N Mod 2 = 1 Then r = r + 1: c = 1 Else c = 2
                .Cells(r + 2, c + 1).Value = sArr(i, 1)
                If N = 8 Then N = 0: r = 0: .Range("B3:C6").PrintPreview
            Next
        Next
        If N > 0 Then .Range("B3:C6").PrintPreview
    End With
End Sub
 
Lần chỉnh sửa cuối:
Upvote 0
Kết hợp công thức và macro cho đơn giản.
--
Công thức mảng tại B3, copy ra B3:C6
Mã:
=IFERROR(INDEX($E$3:$E$5;MATCH($A$1*8-8+ROW(A1)*2-2+COLUMN(A1);MMULT(IF(ROW($F$3:$F$6)>=TRANSPOSE(ROW($F$3:$F$6));1;0);$F$3:$F$6+0)-$F$3:$F$6+1));"")
Code in
Mã:
Sub InIn()
    Dim i As Long
    Application.Calculation = xlCalculationAutomatic
    For i = 1 To Int((Application.Sum(Sheet1.Range("F3:F5")) - 1) / 8) + 1
        Sheet1.Range("A1").Value = i
        Sheet1.PrintPreview
    Next
End Sub
Thêm cách khách tham khảo:
Mã:
Sub ABC()
    Dim sArr(), i&,  N&, c%, r%, ii&
    With Sheets("Sheet1")
        sArr = .Range("E3:F" & .Range("E" & Rows.Count).End(3).Row).Value
        For i = 1 To UBound(sArr)
            For ii = 1 To sArr(i, 2)
                If N = 0 Then .Range("B3:C6").ClearContents
                N = N + 1
                If N Mod 2 = 1 Then r = r + 1: c = 1 Else c = 2
                .Cells(r + 2, c + 1).Value = sArr(i, 1)
                If N = 8 Then N = 0: r = 0: .Range("B3:C6").PrintPreview
            Next
        Next
        If N > 0 Then .Range("B3:C6").PrintPreview
    End With
End Sub
Cảm ơn các bạn rất nhiều.
 
Upvote 0
Web KT

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

Back
Top Bottom