Hàm tháng VBA | Làm thế nào để lấy số tháng từ ngày?

Excel VBA tháng

Hàm Tháng VBA là một hàm dựng sẵn được sử dụng để lấy tháng từ một ngày và kết quả trả về của hàm này là số nguyên trong khoảng từ 1 đến 12. Hàm này chỉ trích xuất số tháng từ giá trị ngày được cung cấp.

Ví dụ: nếu ngày là 28 tháng 5 năm 2019 thì để trích xuất số tháng từ ngày này, chúng ta có thể sử dụng hàm MONTH.

Làm thế nào để sử dụng hàm tháng trong VBA?

Dưới đây là cú pháp của hàm MONTH.

Chúng tôi chỉ cần cung cấp ngày mà chúng tôi đang cố gắng trích xuất số tháng.

Bạn có thể tải xuống Mẫu Excel tháng VBA này tại đây - Mẫu Excel tháng VBA

Ví dụ 1

Chúng ta sẽ xem cách viết mã để trích xuất số tháng từ ngày. Chúng tôi sẽ lấy ngày là “10 tháng 10 năm 2019 ″.

Bước 1: Bắt đầu quy trình macro.

Mã:

 Sub Month_Example1 () End Sub 

Bước 2: Xác định biến để giữ giá trị ngày tháng. Vì chúng tôi đang lưu trữ giá trị dữ liệu nên loại dữ liệu của chúng tôi phải là "Ngày". Vì vậy, hãy khai báo biến và gán kiểu dữ liệu là “Date” cho biến đã khai báo.

Mã:

 Sub Month_Example1 () Dim DDate As Date End Sub 

Bước 3: Đối với biến này, hãy chỉ định giá trị ngày của ngày 10 tháng 10 năm 2019.

Mã:

 Sub Month_Example1 () Dim DDate As Date DDate = "10 Oct 2019" Kết thúc Sub 

Bước 4: Bây giờ gán số tháng để khai báo thêm một biến là “Số nguyên”.

Mã:

 Sub Month_Example1 () Dim DDate As Date Dim MonthNum As Integer DDate = "10 Oct 2019" Kết thúc Sub 

Lưu ý: Lý do tại sao chúng tôi khai báo biến là Số nguyên vì số tháng của chúng tôi chỉ kết thúc ở 12. Vì vậy, kiểu dữ liệu số nguyên có thể chứa số này.

Bước 5: Đối với biến này, chúng ta sẽ mở hàm MONTH.

Mã:

 Sub Month_Example1 () Dim DDate As Date Dim MonthNum As Integer DDate = "10 Oct 2019" MonthNum = Tháng (Kết thúc Sub 

Bước 6: Chức năng tháng hỏi “Ngày” cần cung cấp để trích xuất số tháng. Vì chúng tôi đã lưu trữ ngày được nhắm mục tiêu vào biến "DDate", hãy cung cấp biến này làm tham số đầu vào cho hàm tháng.

Mã:

 Sub Month_Example1 () Dim DDate As Date Dim MonthNum As Integer DDate = "10 Oct 2019" MonthNum = Tháng (DDate) Kết thúc Sub 

Bước 7: Bây giờ hàm “Month” sẽ trả về số tháng từ ngày được cung cấp cho biến “MonthNum” và cuối cùng hiển thị kết quả trong một hộp thông báo trong VBA.

Mã:

 Sub Month_Example1 () Dim DDate As Date Dim MonthNum As Integer DDate = "10 Oct 2019" MonthNum = Tháng (DDate) MsgBox ThángNum End Sub 

Chạy mã và xem số tháng trong hộp tin nhắn.

Đầu ra:

Vì vậy, số tháng kể từ ngày được cung cấp là 10 tức là tháng 10.

Ví dụ số 2

Bây giờ chúng ta sẽ lấy tham chiếu ô để mã hóa. Dưới đây là ngày chúng tôi có trong bảng tính.

Vì vậy, từ giá trị ngày tháng của ô A2, chúng ta cần trích xuất số tháng sang ô B2.

Mã:

 Sub Month_Example2 () Range ("B2"). Giá trị = End Sub 

Mở hàm MONTH và cung cấp ngày dưới dạng giá trị RANGE A2.

Mã:

 Sub Month_Example2 () Range ("B2"). Giá trị = Tháng (Range ("A2")) End Sub 

Lý do tại sao chúng tôi cung cấp ô Phạm vi A2 bởi vì lần này ngày của chúng tôi nằm trong ô A2, vì vậy, cùng một tham chiếu sẽ là tham chiếu.

Bây giờ thực thi mã và lấy số tháng kể từ ngày trong ô B2.

Đây là số tháng trong ô B2.

Ví dụ # 3

Chúng tôi đã trích xuất tháng cho ngày một ô nhưng điều gì sẽ xảy ra nếu chúng tôi có nhiều hàng dữ liệu như bên dưới.

Trong những trường hợp này, chúng ta cần lặp qua các ô và thực hiện tác vụ trích xuất số tháng từ mỗi ngày tương ứng.

Đoạn mã dưới đây sẽ thực hiện công việc cho chúng tôi.

Mã:

 Sub Month_Example3 () Dim k As Long For k = 2 to 12 Cells (k, 3) .Value = Month (Cells (k, 2) .Value) Next k End Sub 

Những gì mã này sẽ làm là nó sẽ lặp qua các hàng từ 2 đến 12 và trích xuất số tháng từ cột thứ hai và lưu trữ kết quả trong cột thứ ba.

Những điều cần nhớ ở đây

  • MONTH là một hàm trang tính cũng như hàm VBA.
  • MONTH yêu cầu tham chiếu ngày hợp lệ, nếu không, chúng tôi sẽ nhận được thông báo lỗi.
  • Nếu số tháng là 12 thì nó sẽ thông báo lỗi.

$config[zx-auto] not found$config[zx-overlay] not found