VBA Excel (Bài 1): VBA là gì? một số ví dụ ứng dụng VBA trong công việc

LÝ DO BẠN CẦN BIẾT TỚI VBA

Trước đây tôi là một người không biết gì về VBA. Khi ấy tôi rất sợ khi tiếp cận những file có cảnh báo là có liên quan tới VBA. Thậm chí tôi đã từng nghĩ “sẽ không bao giờ dùng hay học về VBA”. Bởi với tôi lúc ấy, chỉ cần dùng các hàm, các công cụ có sẵn trong Excel là đủ rồi. Cho tới khi tôi gặp phải những vấn đề:

  • Ngày nào cũng phải làm đi làm lại 1 việc khiến tôi bị mất thời gian mà lại cảm giác rất nhàm chán, chưa kể đến việc làm sai, làm thiếu.
  • Khi file Excel chứa quá nhiều công thức và dữ liệu lớn, việc tính toán trở nên rất chậm chạp.
  • Gặp khó khăn khi làm báo cáo: báo cáo chứa nhiều công thức và cách trình bày không được đẹp.
  • Dữ liệu từ nhiều file excel phải copy paste 1 cách thủ công vào 1 file tổng hợp để làm báo cáo.

Để khắc phục những điều này, bắt buộc chúng ta phải dùng tới VBA.

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. Khi nhắc tới “lập trình”, có thể bạn sẽ hoang mang 1 chút, bởi hầu hết những người sử dụng Microsoft Office đều không phải là “dân lập trình”. Hãy hiểu 1 cách đơn giản rằng:

  • Đây là ngôn ngữ rất cơ bản mà ai cũng có thể học và sử dụng được.
  • Bạn có thể lập trình cho những công việc hàng ngày bạn vẫn làm để giúp nó trở nên tự động hơn, nhanh hơn, gọn hơn và đẹp hơn.
  • VBA có thể giúp bạn vượt qua các giới hạn mà bạn đang gặp phải khi làm việc với Microsoft Office.

Lập trình VBA trong Excel  là việc bạn sẽ viết các đoạn lệnh, đoạn Code trong VBA. Khi chạy các đoạn lệnh đó thì máy tính sẽ tự động thực hiện theo những gì đã được viết.

Giả sử phải làm 10 thao tác trong Excel lần lượt một cách thủ công (có thể mất nhiều thời gian để làm đủ cả 10 thao tác này). Bạn có thể viết lại các thao tác đó dưới dạng đoạn code trong VBA để biến nó thành 1 lệnh duy nhất. Khi đó chỉ với 1 cú bấm chuột, Excel sẽ tự động thực hiện cả 10 thao tác đó trong nháy mắt.

MỘT SỐ VÍ DỤ ỨNG DỤNG VBA TRONG CÔNG VIỆC

Khi mới học VBA, tôi cũng chưa biết nhiều về những lợi ích có thể đạt được. Lúc ấy tôi chỉ nghĩ rằng mình có thể khiến file Excel trở thành 1 phần mềm nhỏ, giống như những phần mềm mà tôi đã gặp.

Trong VBA, bạn có thể tạo ra chức năng đăng nhập bằng tài khoản để mở file Excel. Thật thú vị phải không nào! thử tưởng tượng rằng bạn có thể cho phép nhiều người cùng sử dụng file excel của bạn, mà mỗi người có 1 tài khoản khác nhau, mỗi tài khoản đăng nhập vào lại xem được những phần khác nhau trong file Excel đó. Đó là điều mà Excel thông thường không dùng VBA không thể làm được.

Ẩn / hiện các Sheet một cách linh hoạt. Với những file Excel có rất nhiều Sheet, việc di chuyển giữa các Sheet trở nên rất khó khăn. Ước gì mình có thể làm việc với file có nhiều Sheet mà chỉ như file có 2-3 Sheet thôi nhỉ? Bạn có từng nghĩ như vậy không? VBA có thể biến điều ước của bạn thành hiện thực đó. Bằng việc có thể kết hợp đồng thời thao tác Chọn Sheet + Ẩn / hiện Sheet, bạn hoàn toàn có thể linh hoạt trong việc:

  • Làm việc với Sheet nào thì mở ẩn Sheet đó ra.
  • Khi không cần làm việc nữa, sẽ tự động ẩn Sheet đó đi.

Tự động hóa các báo cáo bằng VBA. Chỉ với 1 cú click chuột, toàn bộ báo cáo phức tạp của bạn đã được cập nhật hoàn toàn tự động! Đây không phải là lời quảng cáo của 1 phần mềm, mà bạn hoàn toàn có thể tự làm được điều này trong Excel khi kết hợp với VBA. Bạn có thể khiến chức năng Advanced Filter – một công cụ trích lọc dữ liệu rất mạnh trong excel – trở nên tự động mỗi khi bạn thay đổi điều kiện báo cáo. Khi đó toàn bộ kết quả báo cáo sẽ được cập nhật lại theo điều kiện mới.

Tự động lọc danh sách không trùng. Bạn cũng có thể tự động hóa cho các thao tác lọc danh sách không trùng bằng Advanced Filter, hay Remove Duplicates. Bằng cách ghi lại các thao tác này với chức năng Record Macro, bạn đã có thể dễ dàng có được các đoạn mã code trong VBA. Chỉ cần 1 click chuột để chạy đoạn mã đó, danh sách của bạn đã được tự động lọc bỏ các giá trị trùng.

Tự động thay đổi hình ảnh theo tên được chọn trong 1 danh sách. Bạn có 1 danh sách nhân sự cấp dưới. Bạn muốn tra cứu thông tin của họ, bao gồm cả thông tin và hình ảnh. Mỗi khi chọn tên 1 người, lập tức những thông tin liên quan tới người đó tự động được hiện ra. Những điều này hoàn toàn có thể làm được khi bạn biết cách dùng VBA

Bạn muốn giảm bớt các công thức trong file mà vẫn giữ nguyên được kết quả? Điều này tưởng khó khăn nhưng hóa ra lại hết sức đơn giản khi bạn chỉ cần vài đoạn code ngắn trong VBA. Việc này sẽ giúp file Excel của bạn trở nên gọn, nhẹ hơn rất nhiều mà không làm thay đổi chức năng vốn có của nó.

Bạn phải trích xuất dữ liệu từ Excel ra PDF mà có quá nhiều trang, có thể tự động việc này được không? Câu trả lời là “có”. Với VBA, những thao tác như in ấn, trích xuất, lưu trữ… hoàn toàn có thể được thực hiện một cách tự động chỉ với 1 cú click chuột. Thay vì mất hàng giờ để trích xuất / in ấn tài liệu theo từng trang, giờ đây bạn chỉ cần viết 1 đoạn mã và để Excel tự động làm việc đó cho bạn. Bạn đã tiết kiệm được rất nhiều thời gian và công sức phải không nào.

Gộp nhiều file vào 1 file. Thay vì phải copy paste từng file Excel, bạn hãy nghĩ tới việc có thể để Excel tự làm việc này cho bạn. Bấm 1 nút, dữ liệu ở hàng trăm file Excel sẽ được tự động gộp lại vào 1 file duy nhất. Điều này quả là rất tuyệt vời phải không?