Tìm hiểu về cách tự tạo hàm Excel trong VBA

Đội ngũ Gitiho
16 May 2020

Hàm là gì?

Hàm là một tập hợp các đoạn mã thực hiện một tác vụ cụ thể và trả về một kết quả. Hàm chủ yếu được sử dụng để thực hiện các tác vụ được lặp đi lặp lại như là định dạng dữ liệu đầu ra, thực hiện tính toán,…

Giả sử bạn đang phát triển một chương trình tính toán lãi suất cho một khoản vay. Bạn có thể tạo ra một hàm thu nhận số tiền cho vay và thời gian hoàn vốn. Hàm này có thể sử dụng số tiền cho vay và thời gian hoàn vốn để tính giá trị lãi suất và lợi nhuận. 

Tại sao chúng ta phải sử dụng hàm?

Ưu điểm của việc sử dụng hàm giống như ưu điểm của việc tại sao nên sử dụng chương trình con

Quy tắc đặt tên hàm

Các quy tắc đặt tên hàm giống như quy tắc đặt tên chương trình con.

Cú pháp khai báo hàm trong VBA

Trong đó:

CodeHành động
“Private Function myFunction(…)”Từ khóa “Function” được sử dụng để khai báo một hàm có tên là “myFunction” và bắt đầu phần thân của hàmTừ khóa “Private” được sử dụng để chỉ định phạm vi của hàm
“ByVal arg1 As Integer, ByVal arg2 As Integer”Nó khai báo hai tham số của kiểu dữ liệu số nguyên với tên là “arg1” và “arg2”
myFunction = arg1 + arg2Đánh giá biểu thức arg1 + arg2 và gán kết quả cho tên của hàm
“End Function”“End Sub” được sử dụng để kết thúc phần thân hàm

Ví dụ

Hàm rất giống với chương trình con. Sự khác biệt giữa một chương trình con và một hàm là hàm trả về một giá trị khi nó được gọi. Trong khi một chương trình con không trả về một giá trị khi nó được gọi. Giả sử bạn muốn cộng hai số. Bạn có thể tạo ra một hàm thu nhận hai số đó và trả về tổng của các số.

  1. Tạo giao diện người dùng
  2. Thêm hàm
  3. Viết mã code cho nút lệnh
  4. Kiểm tra code

Bước 1: Giao diện người dùng

Thêm một nút lệnh như bảng tính dưới đây:

Đặt các thuộc tính của CommandButton1 như sau:

S/NControlPropertyValue
1CommandButton1NamebtnAddNumbers
2
CaptionAdd Numbers Function

Giao diện sẽ xuất hiện như sau:

Bước 2: thiết lập code hàm:

  1. Nhấn tổ hợp phím Alt + F11 để mở cửa sổ code
  2. Thêm đoạn code sau:

Trong đó:

CodeHành động
“Private Function addNumbers(…)”Khai báo một hàm riêng “addNumber” thu nhận hai số nguyên
“ByVal firstNumber As Integer, ByVal secondNumber As Integer”Khai báo hai biến tham số là firstNumber và secondNumber
“addNumbers = firstNumber + secondNumber”Cộng giá trị hai số firstNumber và secondNumber, sau đó gán tổng cho addNumbers

Bước 3: Viết mã code gọi hàm

  1. Kích chuột phải vào nút lệnh btnAddNumbers_Click
  2. Chọn View Code
  3. Thêm đoạn code sau:

Trong đó:

CodeHành động
“MsgBox addNumbers(2,3)”Gọi hàm addNumbers và truyền 2 và 3 vào làm tham số. Hàm sẽ trả về kết quả tổng của hai số là 5

Bước 4: Chạy chương trình, bạn sẽ nhận được kết quả như sau:

Bạn có thể tải file Excel chứa mã code ở trên tại đây: https://drive.google.com/uc?export=download&id=0BwL5un1OyjsdTVowTXJTYXJ6Vkk

Kết luận

  • Hàm là một tập hợp các đoạn mã thực hiện một tác vụ cụ thể, nó sẽ trả về một giá trị sau khi được thực hiện.
  • Cả chương trình con và hàm đều cung cấp mã có thể tái sử dụng.
  • Cả chương trình con và hàm đều giúp chia các đoạn mã lớn thành các đoạn mã nhỏ có thể dễ dàng quản lý được.

Cảm ơn bạn đã theo dõi bài viết. Hãy xem thêm các bài viết về VBA khác của gitiho để nắm được nhiều kiến thức hơn nữa nhé.

Đánh giá bài viết này
@ 2020 - Bản quyền của Công ty TNHH 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