Nhờ giúp đỡ câu lệnh in theo điều kiện.

Liên hệ QC
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

  • in.xlsx
    11.5 KB · Đọc: 10
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