Chào các bạn,
Trong quá trình sử dụng VBA trong Excel, việc tạo ra các userform để nhập dữ liệu là một cách làm phổ biến. Tuy nhiên, với những bạn mới bắt đầu, việc thiết lập userform có thể gặp nhiều khó khăn và phức tạp với nhiều mã lệnh khác nhau. Để giúp các bạn tối ưu hóa quy trình này, trong bài viết này, mình sẽ hướng dẫn cách sử dụng SheetForm (form tạo trên Sheet) để thực hiện các tác vụ tương tự như userform.
Nôi Dung Chính Của Bài Viết
- Tạo nút lệnh để làm mới thông tin
- Xây dựng quy trình thực hiện
- Lập số phiếu tự động
- Viết mã VBA thực hiện tác vụ
- Gán lệnh Macro vào nút lệnh
Bước 1: Tạo Nút Lệnh Để Làm Mới Thông Tin
Đầu tiên, chúng ta sẽ tạo một nút lệnh có tên Làm mới trong sheet Phieu_thu để thực hiện các thao tác nhập liệu. Hãy tham khảo khả năng mà nó mang lại trong phần này.
Tạo nút lệnh trên Excel
Bước 2: Xây Dựng Quy Trình Thực Hiện
Quy trình chính của chúng ta sẽ tập trung vào việc diễn giải câu lệnh bằng mã lệnh. Với quy trình này, bảng tính Excel sẽ tự động cập nhật thông tin trong phiếu khi bạn nhấn vào nút lệnh.
Rèn luyện khả năng sử dụng Excel là rất quan trọng. Nếu bạn cảm thấy gặp khó khăn, hãy tham khảo khóa học Excel tại đây:
Bước 3: Lập Số Phiếu Tự Động
Để thực hiện việc lập số phiếu tự động, chúng ta sẽ xây dựng một thông số dựa trên các yêu cầu của người dùng. Số phiếu sẽ được tạo ra dựa trên định dạng đã đặt. Ví dụ:
- Định dạng số phiếu: Khi làm mới, sẽ cập nhật số phiếu một cách tự động.
- Các trường hợp khác: Khi làm mới, hệ thống sẽ làm trống dữ liệu tại các nội dung đã có.
Bước 4: Viết Mã VBA Thực Hiện Tác Vụ
Mở cửa sổ VBA (phím tắt Alt + F11), tạo một Sub có tên là Lam_Moi_Phieu_Thu. Nội dung của Sub sẽ được thể hiện như sau:
Sub Lam_Moi_Phieu_Thu()
' Thực hiện tại sheet Phieu_Thu
With Sheet2
' Lấy số phiếu mới
.Cells(4, 2).Value = Sheet3.Cells(3, 3).Value
' Xóa dữ liệu ở những nội dung khác
.Range("B6:B14").ClearContents
End With
End Sub
Giải thích nội dung mã lệnh:
With Sheet2
cho phép ta thao tác trực tiếp với Sheet2 mà không cần phải lặp lại tên sheet nhiều lần..Cells(4, 2).Value
là giá trị tại ô B4 trong sheet Phieu_Thu.Sheet3.Cells(3, 3).Value
lấy giá trị từ ô C3 trong sheet ĐK (điều kiện)..Range("B6:B14").ClearContents
xóa dữ liệu trong vùng từ B6 đến B14.
Bước 5: Gán Lệnh Macro Vào Nút Lệnh
Cuối cùng, để hoàn thiện quy trình, bạn cần gán lệnh Macro cho nút lệnh Làm mới. Nhấn chuột phải vào nút lệnh và chọn Assign Macro, sau đó chọn macro Lam_Moi_Phieu_Thu.
Như vậy, chúng ta đã hoàn thành xong thao tác tạo nút lệnh làm mới phiếu thu một cách đơn giản mà hiệu quả bằng cách sử dụng SheetForm.
Viết mã VBA trong Excel
Kết Luận
Trong bài viết này, mình đã hướng dẫn các bạn một quy trình cụ thể để sử dụng VBA trong Excel để tạo số phiếu tự động và làm mới dữ liệu trên sheet một cách dễ dàng. Hy vọng rằng bạn sẽ áp dụng thành công những kiến thức này vào công việc của mình. Nếu bạn cần thêm tài liệu về Excel hay VBA, hãy truy cập ngay vào trang web loigiaihay.edu.vn để nâng cao kiến thức của mình nhé!