Cách tạo Visual Basic for Applications (VBA) trong Excel

Nội dung được viết bởi G-LEARNING

“Mọi người ở đất nước này nên học cách lập trình máy tính … bởi vì nó dạy bạn cách tư duy. “-Steve Jobs

Tôi muốn mở rộng khái niệm về lập trình của Steve Jobs và mọi người trên thế giới nên học cách lập trình máy tính. Bạn có thể không cần thiết phải làm việc như một lập trình viên hoặc viết chương trình, nhưng nó sẽ dạy bạn cách tư duy.

VBA là gì?

VBA là viết tắt của Visual Basic for Applications  . Trước khi chúng ta đi vào chi tiết, chúng ta hãy định nghĩa xem chương trình máy tính là gì bằng ngôn ngữ của IT. Giả sử bạn có người giúp việc. Nếu bạn muốn người giúp việc dọn dẹp nhà cửa và giặt giũ. Bạn nói cho cô ấy biết phải làm gì bằng cách lời nói và cô ấy làm việc cho bạn. Khi bạn làm việc với máy tính, bạn sẽ muốn thực hiện một số tác vụ nhất định. Giống như bạn bảo người giúp việc làm việc nhà, bạn cũng có thể bảo máy tính làm việc cho bạn.

Quá trình nói với máy tính những gì bạn muốn nó làm cho bạn là những gì được gọi là lập trình máy tính. Giống như bạn đã sử dụng lời nói để nói với người giúp việc phải làm gì, bạn cũng có thể sử dụng các câu lệnh như lời nói để nói với máy tính phải làm gì. Các câu nói giống như ngôn ngữ dành riêng cho máy tính. VBA là một ngôn ngữ mà bạn có thể sử dụng để khiến cho excel làm theo ý của bạn.

VBA thực sự là một tập hợp con của Visual Basic 6.0 BASIC là viết tắt của   Beginners All-Purpose Symbolic Instruction Code.

Tại sao lại là VBA?

  • Nó sử dụng ngôn ngữ lập trình như câu lệnh để viết hướng dẫn
  • Tạo giao diện người dùng giống như sử dụng chương trình đồ họa. Bạn chỉ cần kéo, thả và căn chỉnh các điều khiển giao diện của người dùng nó
  • Thời gian học tập ngắn. Từ ngày đầu tiên bạn bắt đầu học, bạn có thể bắt đầu viết ngay các chương trình đơn giản.
  • Cho phép bạn tăng cường chức năng của excel bằng cách làm cho excel hoạt động theo cách bạn muốn

Các ứng dụng cho cá nhân và doanh nghiệp của VBA trong excel

Đối với sử dụng cá nhân, bạn có thể sử dụng nó để các macro đơn giản sẽ tự động hóa hầu hết các tác vụ thông thường của bạn. 

Để sử dụng cho việc kinh doanh, bạn có thể tạo các chương trình cao cấp hơn . Ưu điểm của phương pháp này là bạn có thể tận dụng các tính năng của excel trong các chương trình tùy chỉnh của riêng bạn.

VBA cơ bản

Trước khi chúng ta viết bất kỳ mã nào, chúng ta cần biết những điều cơ bản trước.

  • Biến – ở trường trung học, chúng ta đã học về đại số. Tìm (x + 2y) trong đó x = 1 và y = 3. Trong biểu thức này, x và y là các biến. Chúng có thể được gán bất kỳ số nào tức là 1 và 3 tương ứng như trong ví dụ này. Họ cũng có thể được thay đổi để x= 4 và y= 2 . Các biến là các vị trí bộ nhớ. Khi bạn làm việc với VBA, bạn sẽ được yêu cầu khai báo các biến giống như trong các lớp đại số
  • Quy tắc tạo biến
    • Không sử dụng các từ dành riêng – nếu bạn làm việc như một sinh viên, bạn không thể sử dụng giảng viên hoặc hiệu trưởng. Những chức danh này được dành riêng cho các giảng viên và nhà trường. Các từ dành riêng là những từ có ý nghĩa đặc biệt trong Vba và như vậy, bạn không thể sử dụng chúng làm tên biến.
    • Tên biến không thể chứa dấu cách – bạn không thể xác định biến có tên số đầu tiên. Bạn có thể sử dụng FirstNumber hoặc First_number.
    • Sử dụng tên mô tả – rất hấp dẫn để đặt tên cho một biến theo chính bạn nhưng tránh điều này. Sử dụng tên mô tả tức là số lượng, giá cả, tổng phụ, v.v … điều này sẽ giúp mã VBA của bạn dễ đọc
  • Toán số học – Các quy tắc của toán học phép nhân, phép trừ, phép chia (BODMAS) được áp dụng vì vậy hãy nhớ áp dụng chúng khi làm việc với các biểu thức sử dụng nhiều biểu thức toán học khác nhau. Giống như trong excel, bạn có thể sử dụng:
    • + để thêm
    • – để trừ
    • * để nhân
    • / để chia.
  • Toán số logic – Khái niệm toán số logic được trình bày trong các hướng dẫn trước đó cũng được áp dụng khi làm việc với VBA. Bao gồm các trường hợp:
    • NẾU
    • HOẶC LÀ
    • KHÔNG PHẢI
    • ĐÚNG
    • SAI

Tùy chọn phát triển

  • Tạo một bảng tính mới
  • Bấm vào nút bắt đầu trên thanh công cụ
  • Lựa chọn tùy chỉnh
  • Bấm vào customize ribbon
  • Chọn ô developer như trong hình bên dưới
  • Nhấn OK
Giới thiệu về Macro trong Excel

Bây giờ bạn sẽ có thể thấy tab developer trên thanh công cụ

VBA Xin chào thế giới

Bây giờ chúng ta sẽ lập trình trong VBA. Tất cả chương trình trong VBA phải bắt đầu bằng “Sub” và kết thúc bằng “End sub”. Ở đây tên là tên bạn muốn gán cho chương trình của bạn. Trong khi sub là viết tắt của một chương trình con mà chúng ta sẽ tìm hiểu trong phần sau của hướng dẫn.

sub  ()
.
.
. 
end sub 

Chúng ta sẽ tạo một chương trình VBA cơ bản hiển thị bảng nhập dữ liệu để hỏi tên người dùng sau đó hiển thị thông báo chúc mừng

Hướng dẫn này giả định rằng bạn đã hoàn thành hướng dẫn về Macros trong excel và đã bật tab developer trong excel.

  • Tạo một tệp tin công việc mới
  • Lưu nó dưới định dạng excel * .xlsm
  • Nhấp vào tab developer
  • Nhấp INSERT trên thanh công cụ
  • Chọn một nút lệnh như trong hình bên dưới
Tạo Visual Basic cho ứng dụng (VBA) đầu tiên của bạn trong Excel

Đặt nút lệnh ở bất cứ đâu trên bảng tính

Bạn sẽ nhận được cửa sổ sau đây

Tạo Visual Basic cho ứng dụng (VBA) đầu tiên của bạn trong Excel
  • Đổi tên macro thành btnHelloWorld_Click
  • Bấm vào nút New
  • Bạn sẽ nhận được cửa sổ mã sau đây
Tạo Visual Basic cho ứng dụng (VBA) đầu tiên của bạn trong Excel

Nhập mã lệnh sau

Dim name dưới dạng Chuỗi
Name = InputBox ("Nhập tên của bạn")
MsgBox "Xin chào" + tên

ĐÂY,

  • “Dim name as String” tạo ra một biến gọi là tên. Biến sẽ chấp nhận văn bản, số và các ký tự khác vì chúng ta đã định nghĩa nó dưới dạng chuỗi
  • “Name = InputBox (” Nhập tên của bạn “)” gọi hàm InputBox tích hợp hiển thị một cửa sổ với chú thích Nhập tên của bạn. Tên đã nhập sau đó được lưu trữ trong biến tên.
  • ” MsgBox” xin chào “+ tên” hàm MsgBox tích hợp hiển thị xin chào và tên đã nhập.

bảng mã của bạn bây giờ trông như sau

Tạo Visual Basic cho ứng dụng (VBA) đầu tiên của bạn trong Excel
  • Đóng bảng mã
  • Nhấp chuột phải vào nút 1 và chọn chỉnh sửa văn bản
  • Nhập “nói xin chào”
Tạo Visual Basic cho ứng dụng (VBA) đầu tiên của bạn trong Excel
  • Bấm vào “Nói Xin chào”
  • Bạn sẽ nhận được hộp đầu vào sau
Tạo Visual Basic cho ứng dụng (VBA) đầu tiên của bạn trong Excel
  • Nhập tên của bạn ví dụ là Jordan
  • Bạn sẽ nhận được hộp thông báo sau
Tạo Visual Basic cho ứng dụng (VBA) đầu tiên của bạn trong Excel

Xin chúc mừng, bạn vừa tạo chương trình VBA đầu tiên của mình trong excel

Ví dụ từng bước về việc tạo một máy tính EMI đơn giản trong Excel

Trong bài tập hướng dẫn này, chúng ta sẽ tạo ra một chương trình đơn giản để tính toán EMI. EMI là từ viết tắt của trả góp hàng tháng . Đó là số tiền hàng tháng bạn trả khi bạn vay tiền. Hình ảnh sau đây cho thấy công thức tính EMI.

Tạo Visual Basic cho ứng dụng (VBA) đầu tiên của bạn trong Excel

Công thức rất phức tạp và có thể được viết bằng excel. Bạn có thể sử dụng hàm PMT để tính toán ở trên.

Hàm PMT hoạt động như sau

= PMT (tỷ lệ, nper, pv)

ĐÂY,

  • “Tỷ lệ” là tỷ lệ hàng tháng. Đó là lãi suất chia cho số lần thanh toán mỗi năm
  • “Nper” là tổng số thanh toán. Đó là thời hạn cho vay nhân với số lần thanh toán mỗi năm
  • “pv” giá trị hiện tại. Đó là số tiền cho vay thực tế

Tạo bảng như hình bên dưới

Tạo Visual Basic cho ứng dụng (VBA) đầu tiên của bạn trong Excel

Thêm một nút lệnh giữa các hàng 7 và 8

Đặt tên macro cho nút btnCalculateEMI_Click

Bấm vào nút chỉnh sửa

Nhập mã sau

 Dim monthly_rate As Single, loan_amount As Double, number_of_periods As Single, emi As Double monthly_rate = Range("B6").Value / Range("B5").Value loan_amount = Range("B3").Value number_of_periods = Range("B4").Value * Range("B5").Value  emi = WorksheetFunction.Pmt(monthly_rate, number_of_periods, -loan_amount) Range("B9").Value = emi 

Here,

  • Dim monthly_rate As Single” Dim là từ khóa được sử dụng để xác định các biến trong VBA, hàng tháng là tên biến, Single là loại dữ liệu biến sẽ chấp nhận số.
  • “monthly_rate = Range(“B6”).Value / Range(“B5″).Value”   Range là hàm được sử dụng để truy cập các ô excel từ VBA, Range (“B6”). Value làm tham chiếu đến giá trị trong B6
  • “WorksheetFunction.Pmt (…)” WorksheetFunction là chức năng được sử dụng để truy cập tất cả các chức năng trong excel

Hình ảnh sau đây cho thấy mã nguồn hoàn chỉnh

Tạo Visual Basic cho ứng dụng (VBA) đầu tiên của bạn trong Excel
  • Bấm vào lưu và đóng bảngmã
  • Kiểm tra chương trình của bạn có hoạt động như hình dưới đây
Tạo Visual Basic cho ứng dụng (VBA) đầu tiên của bạn trong Excel

Ví dụ 2

Bước 1) Trong tab Developer từ menu chính, nhấp vào biểu tượng “Visual Basic”, nó sẽ mở trình soạn thảo VBA của bạn.

VBA là gì?

Bước 2)  Bạn có thể chọn bảng Excel nơi bạn muốn chạy mã. Để mở trình soạn thảo VBA, nhấp đúp chuột vào bảng tính.

VBA là gì?

Nó sẽ mở một trình soạn thảo VBA ở phía bên phải của thư mục. Nó sẽ xuất hiện như một khoảng trắng.

VBA là gì?

Bước 3) Trong bước này, chúng ta sẽ thấy chương trình VBA của mình. Để đọc và hiển thị chương trình chúng ta cần một chương trình. 

  • Đầu tiên, viết “Sub” và sau đó là “tên chương trình” của bạn (Guru99)
  • Viết bất cứ điều gì bạn muốn hiển thị trong MsgBox (ví dụ guru99-learning )
  • Kết thúc chương trình bằng End Sub
VBA là gì?

Bước 4) Trong bước tiếp theo, bạn phải chạy mã này bằng cách nhấp vào nút chạy màu xanh lá cây trên đầu trình đơn biên tập.

VBA là gì?

Bước 5) Khi bạn chạy mã, một cửa sổ khác sẽ hiện ra. Tại đây bạn phải chọn trang tính nơi bạn muốn hiển thị chương trình và nhấp vào nút “Run”

VBA là gì?

Bước 6) Khi bạn bấm vào nút Run, chương trình sẽ được thực hiện. Nó sẽ hiển thị thông điệp trong MsgBox.

VBA là gì?

Tải xuống mã Excel ở trên

Tóm lược

VBA là viết tắt của Visual Basic for Application. Đây là một phần của ngôn ngữ lập trình cơ bản mà bạn có thể sử dụng để tạo các ứng dụng trong excel. Với VBA, bạn vẫn có thể tận dụng các tính năng của excel và sử dụng chúng trong VBA.

Để hiểu rõ hơn về cách sử dụng VBA trong Excel bạn nên tham gia khóa học “VBAG01 – Tuyệt đỉnh VBA – Viết code trong tầm tay” của Gitiho. Khóa học sẽ giúp bạn nắm được cách sử dụng ngôn ngữ VBA, cách viết lệnh lập trình trong VBA để tự động hóa chương trình Excel, cách viết các hàm tự tạo theo ý muốn của bạn. Ngoài ra còn nhiều nội dung hấp dẫn hơn nữa. Xem chi tiết tại:

Đánh giá bài viết này

KHÓA HỌC EXCEL ONLINE HOÀN TOÀN MIỄN PHÍ

Khóa học với hơn 14000 HỌC VIÊN đang học và đánh giá trung bình 4.76 SAO

0/5 - (0 bình chọn)

0/5 - (0 bình chọn)

0 thảo 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
Giấy phép mạng xã hội số: 588, cấp bởi Bộ thông tin và truyền thông