Tôi làm chỉ mất có 3s...Mình có đứa bạn gửi cho bảng cell nhờ chỉnh giùm lại định dạng ngày trước tháng sau mà mình làm mãi vẫn chưa có cách nào thực sự hiệu quả cả. Các pro xem và chỉ giáo dùm mình nhé
Cái này đâu phải là định dạng ngày tháng năm đâu bạn. Các giá trị đó đang ở kiểu Text.Mình có đứa bạn gửi cho bảng cell nhờ chỉnh giùm lại định dạng ngày trước tháng sau mà mình làm mãi vẫn chưa có cách nào thực sự hiệu quả cả. Các pro xem và chỉ giáo dùm mình nhé
Về nguyên tắc, các giá trị số nhưng thể hiện dưới dạng Text thì vẫn tính toán được. Và sau khi tính toán, kết quả sẽ trả về giá trị kiểu Number. Cách làm này cũng trên nguyên tắc đó mà thôi. Cộng cho mỗi ngày (đang được thể hiện dưới dạng Text) một số 0.Tôi làm chỉ mất có 3s...
Trên máy tôi, định dạng ngày tháng của hệ thống là tháng trước ngày sau (mm/dd/yyyy), theo kiểu Mỹ.
Tôi mở file của bạn ra, chọn một ô trống nào đó, copy nó, rồi chọn 2 cột B, C của bạn, chọn Paste Special / Add.
Xong. Tất cả đã tự động chuyển về dạng dd/mm/yyyy (cho dù trong hệ thống máy của tôi là dạng mm/dd/yyyy).
Chỉ xin chia sẻ kinh nghiệp xử lý loại này. Còn tại sao có thể thực hiện "nhanh" như vậy thì tôi chịu.
Chiêu này tôi học của anh AnhTuan1066.
Người ta nhờ chuyển cái định dạng ngày tháng đang có trong file trở lại đúng dạng ngày tháng năm cơ mà bạn? Chứ nếu nhập lại thì nói làm gì nữa?Trước tiên, bạn phải chỉnh lại cách hiểu ngày của hệ thống đã.
- vào Star -> Control Panel -> Reginol and Language Options -> trong bảng Reginol Options chọn Customize sau đó chỉnh định dạng ngày cho phù hợp theo ý bạn rồi ok.
- vào excel chọn format cell -> custom -> đánh định dạng ngày theo ý bạn rồi ok.
Bản chất của vấn đề này là việc excel tự ép kiểu dữ liệu trong các biểu thức, dữ liệu nào phù hợp với kiểu sẽ tự động được chuyển trước khi tính toán. Ở đây thao tác của bác cho kết quả đúng là vì định dạng hệ thống là mm/dd/yyyy, và dữ liệu ở đây cũng có đúng định dạng là mm/dd/yyyy(mặc dù đang là text), nên khi ép kiểu nó đúng. Bác thử đổi lại định dạng hệ thống thánh dd/mm/yyyy rồi thực hiện lại thử xem, nó sẽ sai bét ngay. Khi đó nó sẽ ép kiểu text thành kiểu date theo đúng định dạng hệ thống là dd/mm/yyyy, và khi đó ô nào phù hợp (ngày<=12) mới chuyển được thành ngày, nhưng mà giá trị vẫn sai, còn các ô không phù hợp (ngày>12) thì không có gì thay đổi, vì nó không ép được kiểu.Tôi làm chỉ mất có 3s...
Trên máy tôi, định dạng ngày tháng của hệ thống là tháng trước ngày sau (mm/dd/yyyy), theo kiểu Mỹ.
Tôi mở file của bạn ra, chọn một ô trống nào đó, copy nó, rồi chọn 2 cột B, C của bạn, chọn Paste Special / Add.
Xong. Tất cả đã tự động chuyển về dạng dd/mm/yyyy (cho dù trong hệ thống máy của tôi là dạng mm/dd/yyyy).
Đây có phải là điều bạn muốn không:Tôi cố tình chọn 1 ô (ở đây là ô C8) để chứng minh rằng ngày giờ hệ thống của tôi là mm/dd/yyy trong khi kết quả của cái cú Paste Special kia lại là dd/mm/yyyy.![]()
Các bạn xem kết quả trong C8 và cái hiển thị trên Formula Bar, chúng chả giống nhau.
Có ai giải thích dùm tôi chuyện này không?
Tôi chỉ xin chia sẻ kinh nghiệp xử lý loại này thôi. Còn tại sao có thể thực hiện "nhanh" như vậy thì tôi chịu.
Chiêu này tôi học của anh AnhTuan1066.
Điều này đương nhiên rồi... chính vì lẽ đó mà bài viết trước tôi có đề cập rằng:Bản chất của vấn đề này là việc excel tự ép kiểu dữ liệu trong các biểu thức, dữ liệu nào phù hợp với kiểu sẽ tự động được chuyển trước khi tính toán. Ở đây thao tác của bác cho kết quả đúng là vì định dạng hệ thống là mm/dd/yyyy, và dữ liệu ở đây cũng có đúng định dạng là mm/dd/yyyy(mặc dù đang là text), nên khi ép kiểu nó đúng. Bác thử đổi lại định dạng hệ thống thánh dd/mm/yyyy rồi thực hiện lại thử xem, nó sẽ sai bét ngay. Khi đó nó sẽ ép kiểu text thành kiểu date theo đúng định dạng hệ thống là dd/mm/yyyy, và khi đó ô nào phù hợp (ngày<=12) mới chuyển được thành ngày, nhưng mà giá trị vẫn sai, còn các ô không phù hợp (ngày>12) thì không có gì thay đổi, vì nó không ép được kiểu.