Ngày định dạng VBA

Hướng dẫn này sẽ trình bày cách định dạng ngày tháng bằng VBA.

Định dạng ngày trong VBA

Có hai phương pháp để định dạng ngày tháng bằng VBA.

  1. Thuộc tính NumberFormat của Ô / Dải - Để định dạng ngày tháng được lưu trữ trong ô
  2. Hàm Định dạng VBA - Để định dạng ngày tháng trong VBA (ví dụ: các biến)

NumberFormat - Ngày tháng

Định dạng số mặc định của một ô trong Excel là Chung. Bạn có thể hiển thị các giá trị dưới dạng số, văn bản, ngày tháng, tỷ lệ phần trăm hoặc đơn vị tiền tệ bằng cách thay đổi định dạng số. Thuộc tính NumberFormat có thể được sử dụng trong VBA để đặt định dạng số của ngày trong một ô hoặc phạm vi.

Ghi chú: Để xem các định dạng ngày tiêu chuẩn khác nhau có sẵn trong Excel, hãy chuyển đến Trang chủ> Số và bạn sẽ thấy các tùy chọn như Ngày ngắn, Ngày dài và Thời gian.


Ngày ngắn hạn

Tùy chọn định dạng số ngày ngắn hiển thị ngày ở định dạng số, ngắn.

Đoạn mã sau sẽ đặt thuộc tính .NumberFormat của ô A1 thành Ngày ngắn:

1 Phạm vi ("A1"). NumberFormat = "mm / dd / yyyy"

Ngày dài

Định dạng số ngày dài hiển thị ngày ở định dạng dài hơn, bằng văn bản. Đoạn mã sau sẽ đặt thuộc tính .NumberFormat của ô A1 thành Ngày dài:

1 Phạm vi ("A1"). NumberFormat = "dddd, mmmm dd, yyyy"

Ngày tùy chỉnh

Để xem các mã định dạng số tùy chỉnh mà bạn có thể sử dụng trong VBA để định dạng ngày tháng, hãy chuyển đến Trang chủ> Số và nhấp vào Trình khởi chạy Hộp thoại. Chọn tab Số và chọn Tùy chỉnh.

Bạn có thể chọn các định dạng cài sẵn tùy chỉnh cho ngày của mình hoặc tạo các định dạng ngày do người dùng xác định của riêng bạn. Đoạn mã sau sẽ đặt thuộc tính .NumberFormat của ô A1 thành định dạng ngày tùy chỉnh được tích hợp sẵn:

1 Phạm vi ("A1"). NumberFormat = "mmm-yy"

Kết quả là:

Đoạn mã sau sẽ đặt thuộc tính .NumberFormat của ô A1, thành định dạng ngày tùy chỉnh do người dùng xác định:

1 Phạm vi ("A1"). NumberFormat = "dddd-dd-mmm-yy"

Kết quả là:

Bằng cách xem lại các ví dụ được tạo sẵn của Excel, bạn có thể tìm hiểu cách nhập Định dạng Số. Để biết thêm thông tin, hãy đọc tài liệu của Microsoft về các định dạng số cho ngày tháng.

Chức năng định dạng VBA

Như đã đề cập ở trên, phương thức NumberFormat thích hợp để thiết lập Numberformat của ngày tháng được lưu trữ trong các ô Excel. Trong VBA, bạn có thể sử dụng Hàm định dạng để chuyển đổi ngày tháng thành chuỗi với định dạng ngày tháng nhất định.

Bạn sẽ sử dụng cú pháp sau để định dạng ngày tháng:

Định dạng (String_Representation, NumberFormatCode) trong đó:

String_Representation - chuỗi văn bản đại diện cho ngày tháng.

NumberFormatCode - mã định dạng số chỉ định cách hiển thị ngày.

Đoạn mã sau cho biết cách định dạng biểu diễn chuỗi văn bản của một ngày dưới dạng định dạng ngày dài:

1 Định dạng MsgBox ("1/1/2010", "dddd, mmmm dd, yyyy")

Kết quả là:

Lưu ý rằng Hàm Định dạng sử dụng cùng một cú pháp định dạng ngày như Định dạng Số ở trên.

Đoạn mã sau cho biết cách định dạng biểu diễn chuỗi văn bản của một ngày dưới dạng định dạng ngày trung bình:

1 Định dạng MsgBox ("Ngày 09 tháng 10 năm 2012", "Ngày trung bình")

Kết quả là:

Đoạn mã sau cho biết cách định dạng biểu diễn chuỗi văn bản của một ngày ở dạng định dạng do người dùng xác định:

1 Định dạng MsgBox ("09 tháng 10 năm 2012", "dddd: dd / mm / yy")

Trình tạo định dạng tùy chỉnh VBA

Phần bổ trợ VBA của chúng tôi: AutoMacro chứa Trình tạo định dạng tùy chỉnh cho Trình chỉnh sửa VBA. Điều này cho phép bạn đặt các định dạng tùy chỉnh và ngay lập tức xem trước kết quả đầu ra cho giá trị mong muốn của bạn:

Phần bổ trợ VBA chứa nhiều “Trình tạo mã” khác, một thư viện mã mở rộng và một loạt các công cụ mã hóa khác. Đây là tiện ích bổ sung tối ưu cho bất kỳ ai nghiêm túc về lập trình VBA!

Ngày định dạng VBA trong Access

Chức năng Ngày Định dạng VBA hoạt động hoàn toàn giống trong Access VBA như trong VBA Excel.

12345678910 Hàm GetDateFilter () As String'tạo một chuỗi để lấy thông tin từ 2 trường ngày trên một biểu mẫu trong AccessDim strDateField dưới dạng chuỗiNếu IsNull (Me.txtSDate) = Sai thìIf IsNull (Me.txtEDate) = True Then Me.txtEDate = Me.txtSDateNếu strDateField2 = "" ThìGetDateFilter = strDateField & "Between #" & Format (Me.txtSDate, "mm / dd / yyyy") & "# And #" & Format (Me.txtEDate, "mm / dd / yyyy") & "#"Kết thúc nếuKết thúc nếuChức năng kết thúc

Bạn sẽ giúp sự phát triển của trang web, chia sẻ trang web với bạn bè

wave wave wave wave wave