VBA Excel Cấp Tốc Bài 3 - In Ấn Nhanh Hàng Loạt
Có thể bạn quan tâm
Xem bài học trước
>> VBA Excel Cấp Tốc Bài 1 - Lọc Dữ Liệu Nhiều Điều Kiện Với Advanced Filter
>> VBA Excel Cấp Tốc Bài 2 - In Bảng Cửu Chương
Video hướng dẫn thực hành
Tạo VLOOKUP
Tạo VLOOKUP khi tự động chạy số báo danh các mục như tên, ngày sinh, điểm, ... sẽ tự động hiển thị theo số báo danh.
Ta sẽ làm như sau kích vào ô tên thí sinh gõ =VLOOKUP(kích vô ô SBD chấm phẩy qua sheet dữ liệu bôi đen hết dữ liệu chấm phẩy ở mục tên là 2 chấm phẩy 0) -> Enter.
VD: =VLOOKUP(D4;Data!A1:J16;2;0)

Khi tạo xong sẽ được kết quả như hình. Có thể thử nghiệm bằng cách nhập SBD xem có hiện tên ra không nếu hiện ra là ok.

Ở các mục Ngày Sinh ta cũng thực hiện như ở cột tên ta chỉ thay số 2 thành số 3 -> Enter.

Ở mục ngày sinh t đổi sang định dạng ngày tháng bằng cách kích chuột phải vô ô ngày sinh -> Format Cells -> Date -> Ok.

Các mục tiếp theo bạn cũng thực hiện tương tự chỉ thay số 2 thành 3 4 5 cho đến mục cuối cùng. Kết quả khi hoàn thành như hình bên dưới.

In ấn nhanh hàng loạt.
Giờ ta sẽ bắt đầu viết code để thực hiện việc in ấn hàng loạt. Đầu tiên mở Visual Basic lên bằng phím tắt Alt+F11 -> chuột phải vào Sheet 2 -> Insert -> Module.

Đầu tiên ta sẽ mở đầu chương trình là Sub Tên chương trình viết không cách không dấu Enter sẽ tự tạo ra phần kết của chương trình.

- Khai báo i và i sẽ chạy từ số báo danh đầu tiên đến số báo danh cuối cùng. Dim i As Integer và i = 2 tại vì số báo danh đầu tiên nằm ở ô số 2.
- Dùng vòng lặp While để mở đầu vòng lặp và Wend để kết thúc vòng lặp.
- Mở đầu là while đến ThisWorkbook sheets(1) là sheet dữ liệu cần in, cells(i, 1) <>"" là hàm này sẽ chạy ở cột 1 và chạy từ i=2 đến khi gặp rỗng nó sẽ dừng.
- Tiếp theo sẽ gán vị trí số báo danh để khi chạy thì phần số báo danh tăng lên và các mục khác sẽ tự động chạy theo. Gõ ThisWorkbook.Sheets(2) là Sheet chưa phần để in ra Cells(4, 4) là phần ô số báo danh ở cột 4 hàng 4, = ThisWorkbook.Sheets(1).Cells(i, 1) là gán cho phần dữ liệu.
- Cho i tăng sau mỗi lần lập i = i + 1 và kết thúc bằng Wend.

Đến phần code để in đầu tiên vẫn là ThisWorkbook tiếp đến Sheets(2) là Sheet chứa phần cần in, và PrintOut preview = False

Nếu có máy khi bắt đầu in thì nó tự in ra nhưng vì không có máy in nên chỉ in ra File PDF và đặt tên cho File PDF khi lưu và chạy liên tục cho đến thí sinh cuối cùng.

Tạo Macro
Tạo Macro khi cần in ta chỉ việc kích vào Macro mà không cần phải vào Visual Basic hay viết lại code. Vào Developer -> Insert -> Button -> Giữ chuột kéo -> kích vào tên chương trình -> ok.

Nếu muốn in một vài Danh sách thì sử dụng vòng lặp For Next. VD: Muốn in từ hàng số 3 đến hàng số 5.

Đoạn cos của in ấn hàng loạt:
Sub in_hang_loat() Dim i As Integer i = 2 While ThisWorkbook.Sheets(1).Cells(i, 1) <> "" ThisWorkbook.Sheets(2).Cells(4, 4) = ThisWorkbook.Sheets(1).Cells(i, 1) ThisWorkbook.Sheets(2).PrintOut preview = False i = i + 1
Wend End Sub
Bài tiếp theo
>> VBA Excel Cấp Tốc Bài 4 - Xóa Tự Động Hàng Loạt Sheets Không Active
Từ khóa » Code In Hàng Loạt Trong Excel
-
In Hàng Loạt Trong Excel Các Loại Hồ Sơ Bằng (2 Cách) Nhanh Nhất
-
In ấn Nhanh Hàng Loạt Trong Excel Với VBA
-
In ấn Nhanh Hàng Loạt Trong Excel VBA - YouTube
-
In Hàng Loạt Trên Excel VBA Mọi Loại Hồ Sơ (chỉ Bằng 03 Bước)
-
In Hàng Loạt Phiếu Thu Trong Excel | Add In Myexcel - YouTube
-
Giúp Code In Hàng Loạt Theo điều Kiện | Giải Pháp Excel
-
Code In Hàng Loạt Trong Excel
-
Top 14 Cách Viết Code để In Hàng Loạt Nhiều Sheet Trong Excel Mới ...
-
NEW Cách In Hàng Loạt Trong Excel, In Ấn Nhanh Hàng ... - Duy Pets
-
[03 Bước] In Hàng Loạt Nhiều Bản Hồ Sơ Chất Lượng Excel + VBA
-
In Hàng Loạt Với VBA Trong Excel Chỉ Trong 1 Cú Click
-
In Hàng Loạt Trên Excel VBA Mọi Loại Hồ Sơ (chỉ Bằng 03 Bước)
-
Làm Thế Nào để Tạo Mã Qr Dựa Trên Giá Trị ô Trong Excel? - ExtendOffice