Định dạng VBA | Làm thế nào để sử dụng chức năng định dạng VBA? (Ví dụ)

Hàm định dạng VBA trong Excel

Hàm định dạng trong VBA được sử dụng để định dạng các giá trị đã cho theo định dạng mong muốn, hàm này có thể được sử dụng để định dạng ngày hoặc số hoặc bất kỳ giá trị lượng giác nào, hàm này về cơ bản có hai đối số bắt buộc, một là đầu vào được lấy ở dạng một chuỗi và đối số thứ hai là loại định dạng mà chúng ta muốn sử dụng, chẳng hạn nếu chúng ta sử dụng Định dạng (.99, ”Phần trăm”), điều này sẽ cho chúng ta kết quả là 99%.

Trong VBA, chúng ta cần sử dụng chức năng được gọi là "ĐỊNH DẠNG" để áp dụng định dạng cho các ô. Định dạng Excel là một trong những khái niệm quan trọng cần nắm vững. Các kỹ thuật định dạng phổ biến mà chúng ta sử dụng trong công việc hàng ngày là “định dạng ngày tháng, định dạng thời gian, định dạng số và các mã định dạng quan trọng khác”. Trong trang tính excel thông thường, chúng ta chỉ cần nhấn vào tùy chọn định dạng ô excel và thực hiện nhiệm vụ định dạng bằng cách áp dụng mã định dạng thích hợp. Tuy nhiên, trong VBA, điều này không diễn ra thẳng như kỹ thuật trang tính của chúng tôi.

Cú pháp

  • Biểu thức: Đây không là gì ngoài giá trị mà chúng tôi muốn định dạng. Trong kỹ thuật VAB, nó được gọi là Biểu thức.
  • [Định dạng]: Định dạng bạn muốn áp dụng cho biểu thức bạn đã chọn là gì? Chúng ta có hai loại định dạng ở đây, một là định dạng do người dùng xác định và định dạng thứ hai là định dạng dựng sẵn.

    Ở đây chúng ta có các Định dạng ngày, Định dạng Số và Định dạng Văn bản VBA.

    Các Định dạng Ngày VBA có ngày ngắn, ngày dài, ngày trung bình và ngày chung.

    Các Định dạng Số có Đơn vị tiền tệ, Chuẩn, Tỷ lệ phần trăm, Khoa học, Có hoặc Không, Đúng hoặc Sai và Bật hoặc Tắt

  • [Ngày đầu tuần]: Ngày đầu tiên trong tuần của bạn là ngày nào? Chúng tôi có thể chọn bất kỳ ngày nào từ danh sách. Dưới đây là danh sách ngày và mã thích hợp.

  • [Tuần đầu tiên của năm]: Tuần đầu tiên của năm là gì? Điều này chỉ định tuần sẽ được sử dụng làm tuần đầu tiên của năm.

Làm thế nào để sử dụng?

Bạn có thể tải xuống Mẫu định dạng VBA này tại đây - Mẫu Định dạng VBA

Ok, chúng ta hãy áp dụng hàm này một cách thực tế để hiểu chức năng của hàm FORMAT. Giả sử bạn có số 8072.56489 và bạn muốn áp dụng định dạng số cho nó. Làm theo các bước dưới đây để áp dụng định dạng số cho nó.

Bước 1: Khởi động macro excel và xác định biến dưới dạng kiểu dữ liệu " chuỗi ".

Mã:

 Sub Worksheet_Function_Example1 () Dim K As String End Sub 

Bước 2: Gán giá trị cho k là số của chúng ta, tức là 8072.56489

Mã:

 Sub Worksheet_Function_Example1 () Dim K As String K = 8072.56489 End Sub 

Bước 3: Hiển thị giá trị “ k ” trong hộp thông báo VBA.

Mã:

 Sub Worksheet_Function_Example1 () Dim K As String K = 8072.56489 MsgBox K End Sub 

Bước 4: Nếu bạn chạy macro này, chúng tôi sẽ nhận được kết quả bên dưới.

Kết quả là chúng ta đã gán giá trị cho biến “k”. Nhưng chúng ta cần áp dụng một số định dạng cho số này để làm cho nó đẹp.

Bước 5: Thay vì chỉ định trực tiếp giá trị cho “ k ”, hãy sử dụng hàm FORMAT.

Mã:

 Sub Worksheet_Function_Example1 () Dim K As String K = Format (MsgBox K End Sub 

Bước 6: Bây giờ cho Biểu thức, hãy gán số 8072.56489 .

Mã:

 Sub Worksheet_Function_Example1 () Dim K As String K = Format (8072.56489, MsgBox K End Sub 

Bước 7: Trong tùy chọn định dạng, chúng ta có thể sử dụng định dạng có sẵn hoặc chúng ta có thể sử dụng mã định dạng của riêng mình. Bây giờ tôi sẽ sử dụng kiểu định dạng có sẵn là " Chuẩn ".

Mã:

 Sub Worksheet_Function_Example1 () Dim K As String K = Format (8072.56489, "Standard") MsgBox K End Sub 

Bước 8: Bây giờ chạy mã này và xem kết quả của hộp thông báo.

Được rồi, chúng ta có dấu phẩy (,) làm dấu phân cách hàng nghìn và số thập phân chỉ được làm tròn đến hai chữ số.

Như vậy, chúng ta có thể sử dụng nhiều kiểu định dạng dựng sẵn khác để áp dụng định dạng. Dưới đây là một số mã tôi đã áp dụng.

# 1 - Định dạng tiền tệ

Mã:

 Sub Worksheet_Function_Example2 () Dim K As String K = Format (8072.56489, "Currency") MsgBox K End Sub 

Kết quả:

# 2 - Định dạng cố định

Mã:

 Sub Worksheet_Function_Example3 () Dim K As String K = Format (8072.56489, "Fixed") MsgBox K End Sub 

Kết quả:

# 3 - Định dạng Phần trăm

Mã:

 Sub Worksheet_Function_Example4 () Dim K As String K = Format (8072.56489, "Phần trăm") MsgBox K End Sub 

Kết quả:

# 4 - Định dạng do người dùng xác định

Ok, bây giờ chúng ta sẽ thấy một số định dạng do người dùng xác định.

Mã:

 Sub Worksheet_Function_Example5 () Dim K As String K = Format (8072.56489, "#. ##") MsgBox K End Sub 

Kết quả:

Mã:

 Sub Worksheet_Function_Example5 () Dim K As String K = Format (8072.56489, "#, ##. ##") MsgBox K End Sub 

Kết quả:

# 5 - ĐỊNH DẠNG Ngày

Chúng tôi đã thấy một số kỹ thuật định dạng quan trọng. Bây giờ chúng ta sẽ phải sử dụng hàm FORMAT để định dạng ngày tháng trong VBA.

Tôi đã viết mã để hiển thị kết quả của ngày thông qua biến.

Mã:

 Sub Worksheet_Function_Example6 () Dim K As String K = 13 - 3 - 2019 MsgBox K End Sub 

Khi tôi chạy mã này, tôi sẽ không nhận được ngày chính xác thay vì kết quả là thảm hại.

Để có được ngày chính xác, chúng ta cần gán định dạng ngày cho nó. Điều đầu tiên chúng ta cần làm là cung cấp ngày trong dấu ngoặc kép và áp dụng định dạng ngày.

Mã:

 Sub Worksheet_Function_Example6 () Dim K As String K = Format ("10 - 3 - 2019", "Long Date") MsgBox K End Sub 

Nếu chạy mã này ngay bây giờ, tôi sẽ nhận được một ngày dài thích hợp.

“Ngày dài” là một định dạng được tạo sẵn, tương tự như vậy, bạn có thể sử dụng các tùy chọn “ngày ngắn” và “ngày trung bình”.

Những điều cần ghi nhớ

  • Giá trị được trả về bởi hàm FORMAT là chuỗi.
  • Chúng tôi cũng có thể sử dụng mã định dạng ngày, giờ và số của riêng mình giống như cách chúng tôi sử dụng trong định dạng trang tính.
  • FORMAT là một hàm VBA và chỉ khả dụng trong VBA không có trong trang tính.