Menu

Xin trợ giúp xử lý ngày tháng bị sai định dạng khi nhập liệu

Khúc Trực Khánh 11/06/2026 17:24 204 lượt xem 3 trả lời

Chào mọi người,

Tình hình là mình đang làm một file Excel để quản lý công việc, có cột nhập ngày hoàn thành. Tuy nhiên, khi nhập liệu, đôi lúc mình quên mất định dạng chuẩn (ví dụ: DD/MM/YYYY) và nhập theo nhiều kiểu khác nhau như MM/DD/YYYY, hoặc có cả dấu chấm thay vì dấu gạch chéo. Điều này dẫn đến việc Excel không nhận diện đúng là ngày tháng, gây khó khăn khi mình muốn sắp xếp, lọc hay tính toán dựa trên ngày.

Mình đã thử dùng chức năng Format Cells nhưng nó chỉ áp dụng cho dữ liệu đã có, không giúp ích khi nhập liệu.

Có cao nhân nào trong diễn đàn có cách nào để tự động xử lý hoặc cảnh báo khi nhập sai định dạng ngày tháng không ạ? Ví dụ như:

  • Thiết lập một quy tắc để Excel tự động chuyển đổi về định dạng chuẩn DD/MM/YYYY?
  • Hoặc ít nhất là có một cảnh báo để mình biết mình nhập sai và sửa lại ngay?

Mình không rành VBA lắm, nên nếu có giải pháp dùng công thức hoặc tính năng có sẵn của Excel thì tốt quá. Hoặc nếu có đoạn code VBA đơn giản thì cũng nhờ mọi người chia sẻ ạ.

Cảm ơn mọi người đã đọc bài!

5

Cảm ơn bạn đã chia sẻ cách dùng Text to Columns xử lý vấn đề định dạng ngày tháng. Mình thấy cách này khá hay và hữu ích, đặc biệt là ở bước chọn định dạng ngày tháng (MDY/DMY).

Ngoài ra, mình cũng có một mẹo nhỏ khác muốn chia sẻ, có thể hữu ích cho những trường hợp nhập liệu đa dạng hơn. Đó là sử dụng chức năng "Flash Fill" (trong Excel 2013 trở lên). Bạn có thể tạo thêm một cột phụ bên cạnh, sau đó nhập đúng định dạng ngày tháng mong muốn cho vài ô đầu tiên. Excel sẽ tự động nhận diện mẫu và điền đúng cho các ô còn lại. Sau đó, bạn chỉ cần copy và paste value sang cột ban đầu.

Không biết bạn đã từng thử qua Flash Fill chưa? Với trường hợp nhập liệu không quá phức tạp, nó cũng là một giải pháp nhanh gọn.

2

Chào bạn, mình hiểu vấn đề bạn đang gặp phải. Cái này hay xảy ra lắm khi làm việc với nhiều người hoặc dữ liệu nhập từ nhiều nguồn khác nhau.

Thay vì chỉ định dạng lại ô, bạn có thể thử cách này: Dùng chức năng Text to Columns. Chọn cột chứa ngày tháng, vào tab Data, chọn Text to Columns. Trong cửa sổ hiện ra, chọn Delimited rồi bấm Next. Ở bước tiếp theo, bạn có thể chọn các dấu phân cách (ví dụ: dấu gạch chéo, dấu chấm) hoặc bỏ trống nếu dữ liệu của bạn không theo dấu phân cách cố định. Quan trọng nhất là ở bước cuối cùng, bạn chọn định dạng ngày tháng là MDY (nếu bạn hay nhập kiểu MM/DD/YYYY) hoặc DMY (nếu bạn hay nhập kiểu DD/MM/YYYY) rồi bấm Finish. Excel sẽ cố gắng chuyển đổi dữ liệu của bạn thành ngày tháng chuẩn.

Cách này có thể giúp xử lý cả dữ liệu đã có và dữ liệu mới nhập vào nếu bạn áp dụng nó một cách thường xuyên.

Bạn thử xem sao nhé!

1

Chào bạn,

Mình cũng hay gặp tình trạng này lắm, nhất là khi làm việc với team hoặc nhận dữ liệu từ nhiều nguồn. Ngoài cách Text to Columns mà bạn đã chia sẻ, mình còn hay dùng một cách khác cũng khá hiệu quả cho trường hợp này.

Đó là sử dụng kết hợp hàm DATEVALUETEXT. Bạn có thể tạo một cột phụ, ví dụ cột B, và dùng công thức:

=DATEVALUE(TEXT(A1,"MM/DD/YYYY")) (nếu dữ liệu của bạn đang ở kiểu MM/DD/YYYY)

Hoặc:

=DATEVALUE(TEXT(A1,"DD/MM/YYYY")) (nếu dữ liệu của bạn đang ở kiểu DD/MM/YYYY)

Sau khi có dữ liệu chuẩn ở cột B, bạn chỉ cần copy và paste special > values sang cột A là xong. Đôi khi, Excel còn tự nhận diện được định dạng nhập liệu và chuyển đổi luôn khi bạn nhập công thức DATEVALUE mà không cần hàm TEXT. Tuy nhiên, dùng thêm TEXT sẽ đảm bảo hơn.

Bạn thấy cách này thế nào? Có vẻ hơi "lằng nhằng" một chút nhưng khá an toàn.

3

Bạn cần đăng nhập để trả lời chủ đề này.

Đăng nhập Đăng ký