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

Chia sẻ bởi:hands
★★★★★
Quảng cáo

Xin chào các bạn.
Nhờ các bạn giúp đỡ em câu lệnh in này với.

1319
Em xin cảm ơn.

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

=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

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

www.giaiphapexcel.com/diendan/threads/nh%E1%BB%9D-gi%C3%BAp-%C4%91%E1%BB%A1-c%C3%A2u-l%E1%BB%87nh-in-theo-%C4%91i%E1%BB%81u-ki%E1%BB%87n.163639/post-1091487

Thêm cách khách tham khảo:

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
Khóa học Power PI – Ứng dung trong Nhân sự
Khóa học SprinGO phù hợp

Khóa học Power PI – Ứng dung trong Nhân sự

TỔNG QUAN KHÓA HỌC: POWER BI CHO NGÀNH NHÂN SỰ Khóa học Power BI cho Nhân sự được thiết kế dành riêng cho các...

Xem khóa học
★★★★★ 5 ★ 1 👤 1 ▥ 0
Quảng cáo

Bạn nên đọc

One Response

  1. hands says:

    Bạn thử tham khảo. .

    Thêm cách khách tham khảo:

    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

    Sao mảng cố định không gán cả mảng xuống mà lại đi gán từng ô.

    Định đưa vào mảng. Thấy mảng có 8 phần tử. Nên lười. Cho xuống sheet luôn đỡ phải viết nhiều anh ạ

    http://www.giaiphapexcel.com/diendan/threads/nh%E1%BB%9D-gi%C3%BAp-%C4%91%E1%BB%A1-c%C3%A2u-l%E1%BB%87nh-in-theo-%C4%91i%E1%BB%81u-ki%E1%BB%87n.163639/post-1091495

Leave a Reply

Your email address will not be published. Required fields are marked *

Quảng cáo

Cũ vẫn chất

Xem thêm