Trần Linh Chi
Trần Linh Chi
Thảo luận 0 thảo luận
Vỗ tay 0 vỗ tay
Lượt xem 750 lượt xem

Những quy tắc vàng cần biết để sử dụng VBA Excel hiệu quả

Jul 27 2021

VBA là một công cụ hỗ trợ đắc lực cho người dùng khi làm việc trong Excel. Tuy nhiên, không phải ai khi sử dụng VBA cũng dễ dàng kiểm soát và sử dụng các câu lệnh sao cho chính xác và hiệu quả, đặc biệt là với những với mới tìm hiểu và sử dụng VBA. Trong bài viết này, hãy cùng Gitiho tìm hiểu những quy tắc vàng cần biết để có thể dễ dàng sử dụng VBA Excel hiệu quả và hạn chế tối đa các lỗi xảy ra. Cùng theo dõi nhé!

Tuyệt đỉnh VBA - Viết code trong tầm tay

VBA là gì?

VBA là viết tắt của Visual Basic Application, là ứng dụng lập trình cơ bản trong Microsoft Office. Nghe tới phần mềm lập trình, có thể chúng ta sẽ thấy cao siêu, không có nhu cầu tìm hiểu, và nghĩ chỉ cần sử dụng tới các hàm và các chức năng trong Excel thôi là đủ. Tuy nhiên, trong quá trình làm việc với Excel, chúng ta rất có thể gặp những trường hợp mà chức năng thông thường của Excel không thể giải quyết được như: Tính toán chậm chạp khi file có dữ liệu, số liệu quá lớn, trình bày báo cáo không đẹp, khó khăn trong việc kết hợp các file Excel với nhau... Nhưng VBA hoàn toàn có thể khắc phục được những khó khăn này. Cách sử dụng VBA cũng không hề khó và phức tạp như chúng ta nghĩ. Bạn hoàn toàn có thể tự học VBA hoặc học thành thạo VBA chỉ trong 14 giờ với khóa học Tuyệt đỉnh VBA - Viết code trong tầm tay.\

Xem thêm: Hướng dẫn cách tạo phím tắt cho macro trong Excel VBA

Những quy tắc cần biết để sử dụng VBA Excel hiệu quả

Việc học VBA và sử dụng VBA không phải là một điều quá khó khăn, nhưng để sử dụng sao cho hiệu quả, hạn chế tối đa nhất việc xảy ra các lỗi và làm mất thời gian chỉnh sửa thì cần nắm vững một số nguyên tắc quan trọng. Dưới đây là những nguyên tắc vàng cần biết giúp bạn dễ dàng kiểm soát các câu lệnh trong VBA:

Nguyên tắc 1: Luôn sử dụng câu lệnh "Option Explicit"

Hay nhớ: Luôn sử dụng câu lệnhOption Explicit” - ràng buộc khai báo biến trước khi sử dụng - trước khi bắt đầu viết bất kỳ dòng lệnh nào trong VBA. Câu lệnh này chỉ hoạt động khi tất cả các biến được dùng trong mã code VBA đều đã được khai báo và kiểm soát trước khi sử dụng. Nhờ vậy, mã code VBA của bạn sẽ hoạt động nghiêm túc, hiệu quả và chính xác hơn, tránh các lỗi liên quan tới các biến được dùng trong VBA trước khi thực hiện câu lệnh

Nguyên tắc 2: Chia các sub/function thành các đoạn nhỏ

Việc chia các sub/function thành các đoạn nhỏ, riêng biệt nhau và dễ nhớ khiến cho việc gọi Macro (call Macro) và chạy Macro (run Macro) trở nên dễ dàng hơn khi cần sử dụng tới. Bên cạnh đó, việc chia nhỏ các sub/function giúp việc kiểm soát các câu lệnh đơn giản hơn, dễ dàng rà soát và kiểm tra mỗi khi có lỗi xảy ra. Vì vậy, khi tạo macro trong VBA, hãy nhớ chia các sub hoặc function thành các đoạn nhỏ nhé!

Xem thêm: Hướng dẫn cách thiết lập vùng in trong Excel bằng VBA

Nguyên tắc 3: Tạo ra các function thường sử dụng

Đối với những câu lệnh thường xuyên được sử dụng, thay vì mỗi lần cần dùng tới chúng ta phải viết lại câu lệnh thì bạn có thể tạo riêng 1 function cho câu lệnh đó. Khi cần sử dụng, chúng ta chỉ cần gọi nó ra là được. Việc này giúp bạn cắt bỏ việc phải viết đi viết lại một câu lệnh thường xuyên, tốn công sức, thời gian, hoặc có thể trong quá trình viết sẽ xảy ra một số sai sót làm bạn mất thời gian tìm kiếm và sửa đổi.

Nguyên tắc 4: Gộp các sub liên quan vào chung module

Khi làm việc với VBA, đối với các sub (thủ tục) có liên quan đến nhau, bạn nên gộp các sub này vào chung một module để dễ nhớ và gọi ra khi cần thiết, tránh tình trạng để sub ở mỗi nơi khiến bạn khó nhớ được vị trí của từng sub. Bên cạnh đó, VBA Excel sẽ ưu tiên chạy những sub trong cùng 1 module. Vì vậy, nếu có các sub liên quan đến nhau trong VBA thì bạn hãy nhớ nhóm chung lại chung một module nhé!

Nguyên tắc 5: Tránh sử dụng Loops

Khi làm việc trong VBA, bạn nên hạn chế tối đa việc sử dụng Loops (Vòng lặp). Thay vào đó, chúng ta có thể thay thế bằng các giải pháp nhanh hơn như AdvancedFilter, Special Cells, Find, AutoFilter... Nếu sử dụng, nên sử dụng Loops thông qua Object collections vì đây là kiểu nhanh nhất so với các kiểu vòng lặp khác trong VBA.


Nguyên tắc 6: Tránh các macro liên quan tới việc xóa cột, dòng, vùng dữ liệu

Khi sử dụng các macro liên quan tới việc xóa cột, dòng, vùng dữ liệu sẽ khiến cho tọa độ tham chiếu của hàm trong Excel bị thay đổi, khiến cho hàm không thể hoạt động được hoặc hoạt động không chính xác. Bên cạnh đó, các vùng tham chiếu trong VBA sẽ không tự động thay đổi theo việc xóa dòng, cột, vùng dữ liệu này trong Excel, từ đó dẫn tới việc tham chiếu sai, đưa ra kết quả bị sai lệch. Vì vậy, thay vì sử dụng các macro liên quand dến việc xóa cột, dòng, vùng dữ liệu, bạn có thể xem xét sử dụng thay thế bằng chức năng Auto Filter, AdvancedFilter hoặc Sort.


Nguyên tắc 7: Tắt chức năng tự động tính toán trước khi chạy code

Đây là một thủ thuật nhỏ khi chạy code mà các bạn nên lưu ý khi làm việc với VBA. Trước khi chạy code trong VBA, bạn nên tắt chức năng tự động tính toán (Auto Calculations) trong Excel. Việc này giúp tăng tốc độ chạy câu lệnh macro, tránh code bị chậm. Vì vayah, trước khi chạy code, hãy chuyển về dạng tính toán thông thường (Manual Calculations), sau khi chạy xong, kết thúc câu lệnh mới trả về dạng Auto Calculations.

Xem thêm: Hướng dẫn cách ẩn trang tính theo ý muốn bằng VBA trong Excel

Nguyên tắc 8: Tắt chức năng cập nhật màn hình trước khi chạy code

Tương tự nguyên tắc 7, việc tắt một số chức năng trong Excel và VBA trước khi chạy code giúp cho code chạy mượt hơn và hạn chế xảy ra lỗi hơn. Trước khi chạy code, bạn nên tắt chức năng cập nhật màn hình (Application.ScreenUpdating = False). Điều này giúp màn hình không bị nhấp nháy khi chạy lệnh trong VBA. . Sau khi câu lệnh hoàn thành sẽ trả về trạng thái cập nhật màn hình (Application.ScreenUpdating = True).

Sub Test() Application.ScreenUpdating = False … (nội dung câu lệnh) Application.ScreenUpdating = True End Sub

Tổng kết

Trong bài viết trên, Gitiho đã cùng bạn tìm hiểu 8 nguyên tắc vàng cần phải biết khi sử dụng VBA Excel. 8 nguyên tắc này chỉ như 8 lưu ý nhỏ, tuy nhiên lại vô cùng quan trọng và hữu ích mà ta cần nắm rõ nếu muốn nâng cao hiệu quả sử dụng VBA Excel, hạn chế những lỗi phát sinh.

Chúc bạn học tốt!  

Cùng tham gia cộng đồng hỏi đáp về chủ đề VBA

Thảo luận 0 câu trả lời
Lượt xem 750 lượt xem
Vỗ tay vỗ tay

0 Bình luận

@ 2020 - Bản quyền của Công ty cổ phần công nghệ giáo dục Gitiho Việt Nam
Giấy chứng nhận Đăng ký doanh nghiệp số: 0109077145, cấp bởi Sở kế hoạch và đầu tư TP. Hà Nội