Nhờ giúp rút gọn 1 chuỗi số.

phamquocnga

Thành viên mới
Tham gia ngày
26 Tháng mười một 2008
Bài viết
15
Được thích
4
Điểm
665
Em có một chuổi số gồm 10 số muốn rút gọn lại thành chuỗi số chỉ còn 4 số. Với điều kiện các chuổi 10 số khác nhau thì rút gọn lại thành chuỗi 4 sốcũng không bị trùng nhau. Không biết có cách nào giải quyết không ah. Mong các cao thủ giúp với. Em cảm ơn.
 
Tham gia ngày
10 Tháng mười 2017
Bài viết
2,703
Được thích
7,693
Điểm
360
Nơi ở
Sài Gòn
Em có một chuổi số gồm 10 số muốn rút gọn lại thành chuỗi số chỉ còn 4 số. Với điều kiện các chuổi 10 số khác nhau thì rút gọn lại thành chuỗi 4 sốcũng không bị trùng nhau. Không biết có cách nào giải quyết không ah. Mong các cao thủ giúp với. Em cảm ơn.
Đưa ví dụ bằng con số cụ thể đi bạn

Thân
 
Tham gia ngày
10 Tháng mười 2017
Bài viết
2,703
Được thích
7,693
Điểm
360
Nơi ở
Sài Gòn
Ví dụ 0912345678; 0934876546;... Mục đích của em là rút gọn dãy số điện thoại đó ah. Ra một dãy gồm 5 số hoặc là 5 ký tự cũng được.
0912345678 --> ra thành số có 4 con số gì?
0934876546 --> ra thành số có 4 con số gì?

Sao bạn không đánh vào file gửi lên chừng chục số và các ví dụ về kết quả mong muốn của mình, để dễ hiểu hơn không!?

Thân
 

phuocam

Thành viên mới
Tham gia ngày
16 Tháng năm 2013
Bài viết
2,328
Được thích
3,066
Điểm
560
Ví dụ 0912345678; 0934876546;... Mục đích của em là rút gọn dãy số điện thoại đó ah. Ra một dãy gồm 5 số hoặc là 5 ký tự cũng được.
Ví dụ 0909090909 thì kết quả là gì? Sử dụng kết quả này làm việc gì vậy bạn?
 

snow25

Thành viên gắn bó
Tham gia ngày
24 Tháng bảy 2018
Bài viết
2,333
Được thích
2,137
Điểm
360
0912345678 --> ra thành số có 4 con số gì?
0934876546 --> ra thành số có 4 con số gì?

Sao bạn không đánh vào file gửi lên chừng chục số và các ví dụ về kết quả mong muốn của mình, để dễ hiểu hơn không!?

Thân
Ví dụ 0909090909 thì kết quả là gì? Sử dụng kết kết quả này làm việc gì vậy bạn?
2 anh ơi em đoán bạn này đang muốn 1 công thức nào đó quy đổi từ 10 số về 5 số theo quy luật nào đó.Nhưng bạn đó cũng không biết quy luật đó nhờ mấy anh nghĩ dùm à.
 
Tham gia ngày
10 Tháng mười 2017
Bài viết
2,703
Được thích
7,693
Điểm
360
Nơi ở
Sài Gòn
2 anh ơi em đoán bạn này đang muốn 1 công thức nào đó quy đổi từ 10 số về 5 số theo quy luật nào đó.Nhưng bạn đó cũng không biết quy luật đó nhờ mấy anh nghĩ dùm à.
Sao được!
Vd: 0909090909=00000 -->được không?

Khà khà khà
/-*+//-*+//-*+/
 

phamquocnga

Thành viên mới
Tham gia ngày
26 Tháng mười một 2008
Bài viết
15
Được thích
4
Điểm
665

SA_DQ

/(hông là gì!
Thành viên danh dự
Tham gia ngày
8 Tháng sáu 2006
Bài viết
6,262
Được thích
10,331
Điểm
1,860
Làm mã số cho học viên để kiểm tra 2 nơi nhập thông tin của hv đó có đúng không, thông qua số đt là mã bí mật
Sao bạn không lấy mã của ngay họ tên HV mà làm mật mã?
 

ThangCuAnh

Mới rờ Ét xeo
Tham gia ngày
1 Tháng mười hai 2017
Bài viết
825
Được thích
654
Điểm
360
Nơi ở
Phờ lây cu
À, vậy thì chỉ dùng được CRC. MD5, SHAxxx thì cho kq rất dài.
Với trường hợp data của bạn như vậy thì khả năng trùng CRC hầu như kg xảy ra.
Gú gồ VBA CRC đi bạn ;
 

phamquocnga

Thành viên mới
Tham gia ngày
26 Tháng mười một 2008
Bài viết
15
Được thích
4
Điểm
665
Sao bạn không lấy mã của ngay họ tên HV mà làm mật mã?
Chưa hiểu ý bạn. Mục đích mình là nơi A hv tự đăng ký thông tin và sđt, nơi B là hv cung cấp cho mình nhập vào 1 pm khác sau đó cấp cho hv một mã, mã này có kèm sđt mã hóa. Sau đó HV cập nhật mã này vào phần đăng ký nếu trùng sđt thì đồng ý. Trách hv nhập bừa hoặc 1 ngkhac nhập vào. Ý mình là vậy chứ chưa tìm ra giải pháp hợp lý.
Bài đã được tự động gộp:

À, vậy thì chỉ dùng được CRC. MD5, SHAxxx thì cho kq rất dài.
Với trường hợp data của bạn như vậy thì khả năng trùng CRC hầu như kg xảy ra.
Gú gồ VBA CRC đi bạn ;
Cảm ơn bạn mình sẽ tìm hiểu có gì mong bạn với ae giúp đỡ thêm.
 

phamquocnga

Thành viên mới
Tham gia ngày
26 Tháng mười một 2008
Bài viết
15
Được thích
4
Điểm
665
Câu này chưa thể hiểu:
Mã mình cấp cho hv từ số đt của hv đã rút gọn nối với id của hv. Hv sẽ nhận mã này đến nơi A cập nhật thêm thông tin. Nếu nhập mã này vào ở A sẽ tách ra sđt và kiểm tra đúng với sđt hv nhập trước đó thì thực hiện các bước tiếp theo, nếu không trùng thì thoát.
 

ThangCuAnh

Mới rờ Ét xeo
Tham gia ngày
1 Tháng mười hai 2017
Bài viết
825
Được thích
654
Điểm
360
Nơi ở
Phờ lây cu
À mà CRC16 sẽ cho ra kq có thể lớn nhất là 5 số đó bạn, max 32767 hay 65535.
Và kg thể tính ngược lại số ban đầu, tức chỉ mã hóa 1 chiều đó bạn.
Dùng được kg ?
 
Tham gia ngày
10 Tháng mười 2017
Bài viết
2,703
Được thích
7,693
Điểm
360
Nơi ở
Sài Gòn
Giống như kiểu như rút gọn link của 1 trang web vậy ấy. Và các chuỗi xuất ra sẽ k bị trùng nhau khi chuỗi nhập vào không trùng.
Chơi cái này cũng vui!
Giải pháp: ngắt 10 chữ số thành 5 phần, mỗi phần 2 chữ số, tức chỉ cần mã hóa 100 con số từ số 00 đến số 99 là xong.
Cột A: chứa chữ số từ 00 đến 99
Cột B: chứa các ký tự thay thế.
Côt E: ghi số điện thoại hoc sinh muốn "mã hóa" :)
Dùng hàm tự tạo JoinText() của thầy @ndu96081631, cụ thể như sau:
Mã:
F2=JoinText("",VLOOKUP(T(IF({1},MID(E2,{1,3,5,7,9},2))),$A$2:$B$100,2,))
G2=IF(F2="","",TEXT(SUM(IFERROR(FIND(MID(F2,{1,2,3,4,5},1),$B$2:$B$100)*10^{8,6,4,2,0}*(ROW($1:$100)-1),)),REPT("0",10)))
Kết thúc bằng Ctrl+shift+Enter.

Thân
 

File đính kèm

SA_DQ

/(hông là gì!
Thành viên danh dự
Tham gia ngày
8 Tháng sáu 2006
Bài viết
6,262
Được thích
10,331
Điểm
1,860
Bạn thử 'ngâm cứu' cách này xem sao:

0913410111213141516171819
04608JKLMNOPQRS
0M73L
 
Top Bottom