Chuyển từ định dạng số sang định dạng ngày tháng

Liên hệ QC

doanthuha203

Thành viên chính thức
Tham gia
6/10/08
Bài viết
53
Được thích
4
Em là dân kế toán. Cho em hỏi các anh chị với. Em có dữ liệu Excel có định dạng là 02102008. Bây giờ em muốn chuyển sang định dạng có dạng là 02/10/2008 thì em làm thế nào ạ. Dữ liệu của em nhiều lắm mà làm tay thì không được. Có anh chị nào tham gia giúp đỡ em với ạ. Em cảm ơn trước nhé.!
 
Vấn đề bạn hỏi có rất nhiều trên diễn đàn rồi, nếu dữ liệu của bạn chuẩn hết đúng như mô tả của bạn và 2 ký tự đầu là ngày, 2 ký tự tiếp theo là tháng, 4 ký tự cuối cùng là năm thì bạn tạo thêm 1 cột bên cạnh và dùng công thức sau để chuyển về dạng ngày nhé
Mã:
=DATE(MID(A1,5,4),MID(A1,3,2),MID(A1,1,2))
Bạn thay ô A1 thành ô chứa dữ liệu ngày mà bạn muốn chuyển rồi sao chép công thức xuống.
 
Thêm một tham khảo cho bạn!

Sẵn xài, mọi lúc, mọi nơi
Mã:
Option Explicit
[B]Function NumToDate(Rng) As Date
[/B] Const Van As Long = 10000
 NumToDate = DateSerial(Rng Mod Van, (Rng \ Van) Mod 100, Rng \ 100 * Van)
[B]End Function
[/B]
 
Chuyển dữ liệu từ dạng số sang dạng ngày tháng

Em viết nhầm mất các anh chị ạ. Định dạng ngày của em là 20080812. Vậy muốn chuyển thành dạng ngày 12/08/2008 thì em phải chuyển như thế nào ạ. Dữ liệu của em thì rất là nhiều không thể chuyển đổi tay được. Các anh chị có thể giúp em được không ạ. Em cảm ơn trước!!
 
Em viết nhầm mất các anh chị ạ. Định dạng ngày của em là 20080812. Vậy muốn chuyển thành dạng ngày 12/08/2008 thì em phải chuyển như thế nào ạ. Dữ liệu của em thì rất là nhiều không thể chuyển đổi tay được. Các anh chị có thể giúp em được không ạ. Em cảm ơn trước!!

Bạn đọc bài của rollover79 rồi đúng không? Vậy thì vận dụng như thế để tách năm, tháng, ngày, rồi đưa vào hàm Date:
A1 = 20080812
Năm = MID(A1,1,4)
Tháng = MID(A1,5,2)
Ngày = MID(A1,7,2)

Đưa vào Hàm Date(Năm, Tháng, Ngày)
Vậy:
B1 = DATE(MID(A1,1,4),MID(A1,5,2),MID(A1,7,2))
 
Em viết nhầm mất các anh chị ạ. Định dạng ngày của em là 20080812. Vậy muốn chuyển thành dạng ngày 12/08/2008 thì em phải chuyển như thế nào ạ. Dữ liệu của em thì rất là nhiều không thể chuyển đổi tay được. Các anh chị có thể giúp em được không ạ. Em cảm ơn trước!!
Nếu làm theo công thức của mình thì thay thành
Mã:
=DATE(MID([COLOR=Red][B]A1[/B][/COLOR],1,4),MID([COLOR=Red][B]A1[/B][/COLOR],5,2),MID([COLOR=Red][B]A1[/B][/COLOR],7,2))
Bạn thay A1 thành ô chứa dữ liệu cần chuyển
 
Lúc đó sẽ là như thế này

Mã:
Option Explicit
[B]Function NumToDate(Rng) As Date[/B]
 Const Van As Long = 10000
 NumToDate = DateSerial(Rng \ Van, (Rng Mod Van) \ 100, Rng Mod 100)
[B]End Function[/B]
Sai 1 ly đi một dặm
 
Em không hiểu công thức của anh chanhtq thế nào cả. Còn công thức của anh rollover79 thì em áp dụng được rồi. Cảm ơn các anh chị nhé
 
Mình cũng làm như trên nhưng chỉ chuyển được từ 20081002 sang thành 02/10/08 được thôi. Chứ từ 02102008 chuyển lại không được. Mong các bạn giúp
 
Mình cũng làm như trên nhưng chỉ chuyển được từ 20081002 sang thành 02/10/08 được thôi. Chứ từ 02102008 chuyển lại không được. Mong các bạn giúp
Trời ơi! Thuật toán vẩn vậy cơ mà:
- Xác định NAM
- Xác định THANG
- Xác định NGAY
3 cái này người ta dùng các hàm xử lý chuổi (MID, LEFT, RIGHT)
Cuối cùng là ráp chúng lại
Sao lại làm không được nhỉ?
 
Mình vẫn làm được đó! Mình cứ áp dụng đúng dạng của hàm Date( Năm, Ngày, Tháng ) là ra thôi. Còn hàm MID là hàm rút trích dữ liệu.Bạn cứ áp dụng thế là OK à.
 
Cái này người ta đã nói ở trên là dùng Hàm Mid, Left, Right để cắt chuỗi và xác định khúc nào là ngày, khúc nào là tháng, là năm. Sau đó đưa vào hàm Date(Năm, Tháng, Ngày). Còn bạn phải tự xác định trong chuỗi chính, khúc nào cần dùng Mid/Left/Right để lấy ngày, tháng, năm chứ?
 
Web KT
Back
Top Bottom