Công thức để mã hóa dữ liệu ngày sinh thành 1 chuỗi có độ dài là 3

  • Thread starter SA_DQ
  • Ngày gửi
S

SA_DQ

Thành viên thân thiết
29/6/05
457
53
28
63
HCM city
Mình có 1 cột ghi ngày tháng năm sinh của 1 cơ quan
& để sắp xếp nhanh theo cột này, mình tiến hành mã hóa cột dữ liệu này như trong hính:

Ngày sinhYEAR(Ci)/3Mã NS
12/13/1956​
652​
BBD=MID(Alf,YEAR(C2)/3-640,1)& MID(Alf,12*MOD(YEAR(C2),3)+MONTH(C2),1)& MID(Alf,1+DAY(C2),1)
1/15/1957​
652.3333​
BCF
2/17/1957​
BDH
3/22/1957​
BEM
4/24/1957​
BFO
5/27/1957​
BGR
6/29/1957​
BHT
8/1/1957​
BJ1
9/3/1957​
BK3
10/6/1957​
BL6
11/8/1957​
BM8
12/11/1957​
BNB
1/13/1958​
652.6667​
BOD
2/15/1958​
BPF
3/20/1958​
BQK
4/22/1958​
BRM
5/25/1958​
BSP
6/27/1958​
BTR
7/30/1958​
BUU
9/1/1958​
BW1
10/4/1958​
BX4
11/6/1958​
BY6
12/9/1958​
BZ9
1/11/1959​
653​
C0B
2/13/1959​
C1D
3/18/1959​
C2I
4/20/1959​
C3K
5/23/1959​
C4N

Từ công thức ta thấy cấn gán 1 Name có tên là 'Alf' có refer to là chuỗi '0123. . . 9ABC. . . XYZ" (độ dài là 36 kí tự)

Sau khi áp công thức này & sắp xếp theo nó, ta sẽ được kết quả trong cột sẽ tăng hay giảm dần theo ý.

Chúc các bạn vui!
 
  • Like
Reactions: HaiTam
S

SA_DQ

Thành viên thân thiết
29/6/05
457
53
28
63
HCM city
CÔNG THỨC ĐỂ GIẢI MÃ NGÀY THÀNH 1 NGÀY CỤ THỂ MÀ NÓ THỂ HIỆN​

Nếu tại ô C2 có 1 mã ngày, ví dụ: W2O

Ta dùng công thức này để chuyển lại trị ngày của nhóm mã đó:
=DATE(1920+3*FIND(LEFT(C2,1),Alf)+IF(FIND(MID(C2,2,1),Alf)>24,2,IF(FIND(MID(C2,2,1),Alf)>12,1,0)), FIND(RIGHT(C2,1),Alf)-1,IF(FIND(MID(C2,2,1),Alf)<13,FIND(MID(C2,2,1),Alf),IF(D2<25,D2-12,D2-24)))
 
  • Like
Reactions: HaiTam

Thành viên trực tuyến

  • bikgleek
  • avocado123

Xem nhiều

TEXT LINK