Ứng dụng: In liên tục phiếu lương, phiếu thu, chi, hợp đồng,…
Chuẩn bị sheet dữ liệu và sheet form in. Trong đó:
– Sheet Dữ liệu có cột số thứ tự
– Sheet Form in làm công thức lấy thông tin từ sheet Dữ liệu theo số thứ tự (thường dùng hàm VLOOKUP, Index, match, Aggregate, Filter,… để lấy thông tin sang)
– Thiết lập vùng in cho sheet Form in
– Nhập 2 ô bên ngoài vùng in để in từ số nào đến số nào. (Ví dụ: Ô P1 nhập in từ số nào, ô P2 nhập in từ số nào )
Các bước thực hiện đưa code VBA vào file và in liên tục:
Bước 1: Copy code vba in liên tục theo số thứ tự vào file
Mở file Excel, nhấn Alt+F11 (hoặc Alt+Fn+F11) để vào cửa sổ VBA. Trong cửa sổ VBA thì vào Insert => chọn Module và Copy code vba dưới đây và paste vào Module vừa tạo
Sub InPhieuLuong()
Dim bd As Integer
Dim kt As Integer
Dim i As Integer
Dim o As Integer
bd = Range("P1").Value '=> In tu Stt nao
kt = Range("P2").Value '=> In den Stt nao
o = Range("E9").Value '=> Cong thuc trong form in duoc lay theo stt tai o nay
If bd > kt Or IsNumeric(bd) = False Or IsNumeric(kt) = False Or bd <= 0 Or kt <= 0 Then
MsgBox "Nhap sai so bat dau hoac ket thuc", vbCritical
Exit Sub
End If
For i = bd To kt
o = i
ActiveSheet.PrintOut
Application.Wait Now + TimeValue("00:00:01")
Next i
MsgBox "Da hoan thanh in " & kt - bd + 1 & " ban, tu so " & bd & " den " & kt, vbInformation
End Sub
18273
Bước 2: Sửa code VBA theo cấu trúc Form in. Gồm 3 chỗ sửa
– bd = Range("P1").Value : Thay địa chỉ ô P1 tương ứng là ô nhập số bắt đầu (Ví dụ: bạn nhập in từ số bắt đầu tại ô X1 thì P1 bằng X1
– kt = Range("P2").Value: Thay địa chỉ ô P2 tương ứng là ô nhập số kết thúc
– o = Range("E9").Value: Thay địa chỉ ô E9 tương ứng là ô chạy stt để lấy thông tin sang form in
Bước 3: Tạo nút bấm in liên tục
Trở lại màn hình Excel, tại sheet Form in thực hiện chèn 1 shape bất kỳ (Insert => Shape). Rồi click chuột phải vào Shape chọn Asign Macro và trỏ vào tên Macro InPhieuLuong
Bước 4: Thực hiện in
Điền số bắt đầu và số kết thúc để in từ số nào đến số nào và nhấn vào nút bấm tạo ở bước 3 để in liên tục
Xây dựng Lương 3P, KPI cho Doanh nghiệp
Làm thế nào để trả lương cho nhân viên chính xác nhất? Đây là một trong những câu hỏi khó trong quản trị nhân...
Xem khóa học