Làm thế nào để nhanh chóng chuyển đổi ngày thành từ trong Excel?
Nói chung, chúng ta thường chuyển đổi ngày tháng sang các định dạng ngày tháng hoặc chữ số khác trong Excel, nhưng bạn đã bao giờ gặp sự cố về việc chuyển đổi ngày tháng sang các từ tiếng Anh như hình minh họa bên dưới chưa? Trên thực tế, không có chức năng tích hợp nào có thể xử lý nó ngoài một mã VBA.
Chuyển đổi ngày thành từng từ với Hàm xác định
Chuyển đổi ngày thành từng từ với Hàm xác định
Đây là một đoạn mã macro có thể giúp bạn chuyển đổi ngày tháng sang từ ngữ.
1. Bật trang tính bạn sử dụng và nhấn Alt + F11 chìa khóa để mở Microsoft Visual Basic cho các ứng dụng cửa sổ.
2. nhấp chuột Chèn > Mô-đun và dán mã bên dưới vào tập lệnh.
VBA: Chuyển ngày thành từ
Function DateToWords(ByVal xRgVal As Date) As String
' Update by Extendoffice on 20240926
Dim xYear As String
Dim Hundreds As String
Dim Decades As String
Dim xTensArr As Variant
Dim xOrdArr As Variant
Dim xCardArr As Variant
' Initialize arrays
xOrdArr = Array("First", "Second", "Third", "Fourth", "Fifth", "Sixth", _
"Seventh", "Eighth", "Ninth", "Tenth", "Eleventh", "Twelfth", _
"Thirteenth", "Fourteenth", "Fifteenth", "Sixteenth", _
"Seventeenth", "Eighteenth", "Nineteenth", "Twentieth", _
"Twenty-first", "Twenty-second", "Twenty-third", "Twenty-fourth", _
"Twenty-fifth", "Twenty-sixth", "Twenty-seventh", "Twenty-eighth", _
"Twenty-ninth", "Thirtieth", "Thirty-first")
xCardArr = Array("", "One", "Two", "Three", "Four", "Five", "Six", "Seven", "Eight", "Nine", _
"Ten", "Eleven", "Twelve", "Thirteen", "Fourteen", "Fifteen", "Sixteen", _
"Seventeen", "Eighteen", "Nineteen")
xTensArr = Array("Twenty", "Thirty", "Forty", "Fifty", "Sixty", "Seventy", "Eighty", "Ninety")
' Extract year
xYear = CStr(Year(xRgVal))
Decades = Mid$(xYear, 3)
' Handle decades
If CInt(Decades) < 20 Then
Decades = xCardArr(CInt(Decades))
Else
Decades = xTensArr(CInt(Left$(Decades, 1)) - 2) & "-" & xCardArr(CInt(Right$(Decades, 1)))
End If
' Handle hundreds
Hundreds = Mid$(xYear, 2, 1)
If CInt(Hundreds) Then
Hundreds = xCardArr(CInt(Hundreds)) & " Hundred "
Else
Hundreds = ""
End If
' Construct English representation of the date
DateToWords = xOrdArr(Day(xRgVal) - 1) & " " & Format$(xRgVal, "mmmm") & " " & _
xCardArr(CInt(Left$(xYear, 1))) & " Thousand " & Hundreds & Decades
End Function
3. Lưu mã và quay lại trang tính, chọn một ô mà bạn sẽ xuất kết quả, nhập công thức này = DateToWords (A2) (A2 là ngày bạn sử dụng), nhấn đăng ký hạng mục thi và kéo chốt tự động điền vào các ô bạn cần. Xem ảnh chụp màn hình:
Mở khóa sự tiện lợi của việc chuyển đổi ngay lập tức số thành từ trong Excel bằng tính năng Số thành Từ của Kutools for Excel, giúp bạn tiết kiệm thời gian và công sức trong việc tạo tài liệu trông chuyên nghiệp một cách dễ dàng!
Các bài báo tương đối:
- Làm thế nào để nhanh chóng chuyển đổi định dạng ngày giữa châu Âu và Mỹ trong Excel?
- Làm thế nào để chuyển đổi dD.MM.YYYY sang định dạng ngày (mM / DD / YYYY) trong Excel?
- Làm thế nào để chuyển đổi giữa ngày và dấu thời gian Unix trong Excel?
Công cụ năng suất văn phòng tốt nhất
Nâng cao kỹ năng Excel của bạn với Kutools for Excel và trải nghiệm hiệu quả hơn bao giờ hết. Kutools for Excel cung cấp hơn 300 tính năng nâng cao để tăng năng suất và tiết kiệm thời gian. Bấm vào đây để có được tính năng bạn cần nhất...
Tab Office mang lại giao diện Tab cho Office và giúp công việc của bạn trở nên dễ dàng hơn nhiều
- Cho phép chỉnh sửa và đọc theo thẻ trong Word, Excel, PowerPoint, Publisher, Access, Visio và Project.
- Mở và tạo nhiều tài liệu trong các tab mới của cùng một cửa sổ, thay vì trong các cửa sổ mới.
- Tăng 50% năng suất của bạn và giảm hàng trăm cú nhấp chuột cho bạn mỗi ngày!