Phân tích cú pháp các định dạng ngày không chuẩn (Microsoft Excel)
Bill phải đối mặt với thách thức nhập dữ liệu vào Excel mà ban đầu được tạo trong các ứng dụng khác. Vấn đề là dữ liệu chứa rất nhiều ngày tháng, nhưng chúng ở định dạng mà Excel không hiểu. Ví dụ: ngày tháng có thể ở định dạng 09.15.20 hoặc 9.15.2020, cả hai đều không được Excel coi là ngày tháng. Bill muốn biết cách chuyển đổi ngày tháng không chuẩn sang định dạng ngày tháng mà Excel hiểu được.
Nếu các ngày có cùng định dạng trình tự mà bạn sử dụng trong cài đặt khu vực của mình, thì việc chuyển đổi chỉ diễn ra trong tích tắc. Ví dụ: nếu cài đặt khu vực của bạn sử dụng định dạng ngày MDY (tháng tiếp theo là ngày tiếp theo năm) và ngày bạn đang nhập có cùng định dạng, thì bạn chỉ cần chọn các ô và thay thế các dấu chấm bằng dấu gạch chéo. Khi Excel thay đổi 9.15.2020 thành 15/09/2020, nó sẽ tự động phân tích kết quả dưới dạng ngày tháng.
Nếu định dạng bạn đang nhập không khớp với cài đặt khu vực của bạn, thì bạn cần phải xáo trộn ngày tháng sang cùng một định dạng. Ví dụ: nếu ngày bạn đang nhập là 09.10.20 (ngày 10 tháng 9 năm 2020) và hệ thống của bạn sẽ diễn giải ngày này là ngày 9 tháng 10 năm 2020, thì cách dễ nhất là tách ngày tháng thành các thành phần riêng lẻ rồi đặt chúng trở lại cùng với nhau. Làm theo các bước chung sau:
-
Chèn ba cột trống vào bên phải của cột ngày.
-
Chọn các ô có chứa ngày không chuẩn.
-
Sử dụng công cụ Văn bản thành Cột (có sẵn trong nhóm Công cụ Dữ liệu trên tab Dữ liệu của ruy-băng) chọn dữ liệu được phân tách và sử dụng một dấu chấm làm dấu phân cách. Sau khi trình hướng dẫn hoàn tất, bạn sẽ có ba cột chứa tháng, ngày và năm.
-
Trong cột trống còn lại, hãy nhập công thức như sau:
-
Sao chép công thức xuống các ô khác bên cạnh ngày tháng.
-
Chọn các ô chứa công thức bạn vừa tạo, sau đó nhấn Ctrl + C.
-
Sử dụng Paste Special để chuyển đổi công thức thành kết quả. (Chọn tùy chọn Giá trị khi sử dụng Dán Đặc biệt.)
-
Xóa ba cột chứa các ngày được phân tách và giữ lại cột chứa ngày cuối cùng.
Một giải pháp khác là chỉ cần sử dụng macro để thực hiện chuyển đổi. Sau đây là một hàm do người dùng xác định lấy ngày không chuẩn và chuyển nó thành giá trị ngày được định dạng đúng. Macro cũng chuyển đổi xung quanh vị trí của tháng và ngày, như được thực hiện trong kỹ thuật Văn bản thành Cột.
Public Function Convert_Date(A As String) As Date Dim K As Long Dim K1 As Long Dim K2 As Long K = Len(A) K1 = InStr(1, A, ".") K2 = InStr(K1 + 1, A, ".") Convert_Date = DateSerial(Val(Mid(A, K2 + 1, _ K - K2 + 1)), Val(Mid(A, K1 + 1, K2 - K1)), _ Val(Mid(A, 1, K1 - 1))) End Function
_Lưu ý: _
Nếu bạn muốn biết cách sử dụng các macro được mô tả trên trang này (hoặc trên bất kỳ trang nào khác trên trang ExcelTips), tôi đã chuẩn bị một trang đặc biệt bao gồm thông tin hữu ích.
ExcelTips là nguồn của bạn để đào tạo Microsoft Excel hiệu quả về chi phí.
Mẹo này (9837) áp dụng cho Microsoft Excel 2007, 2010, 2013, 2016, 2019 và Excel trong Office 365. Bạn có thể tìm thấy phiên bản của mẹo này cho giao diện menu cũ hơn của Excel tại đây: