Các phương pháp tách số từ chuỗi và ngược lại, đề nghị post tại đây

Liên hệ QC
Cái này sai 1 rổ luôn
Mattroicoi 345678-12345678 chuyển tiền cho minhthien321
Thử xem
Người ta đã nói rõ ràng thế này rồi còn gì:

Find số 2909 và Find khoảng trắng sau số 2909, đơn giản thế thôi mà
Ẹc... Ẹc...
Hihi, thì đã bảo làm theo dữ liệu của chủ topic thôi mà
Trong trường hợp thế này:
Nguyen Van A 290900289-3.000.0000
Hoặc
290900289-3.000.0000 chuyển tiền
Hoặc
Nguyen Van A 290900289 chuyển tiền
THì mình chỉ muốn lấy 290900289 hoặc 290900289-3.000.0000 mà thôi. Bạn giúp mình với
Tức là trong chuỗi đó chỉ chứa một chuỗi con là số
Đặt tường hợp ngược lại "Minhthien321 chuyển tiền 123456789 cho ai đó ....." thì Find cũng "tèo"
Việc sử dụng Find thì đã làm từ lâu, muốn thử các cái mới í mà
Híc
 
Thêm cái củ chuối này nữa :
PHP:
=MID(A1;MIN(FIND({0;1;2;3;4;5;6;7;8;9};A1&1234567890));IF(ISERROR(FIND(" ";A1;MIN(FIND({0;1;2;3;4;5;6;7;8;9};A1&1234567890))));LEN(A1);FIND(" ";A1;MIN(FIND({0;1;2;3;4;5;6;7;8;9};A1&1234567890))))-MIN(FIND({0;1;2;3;4;5;6;7;8;9};A1&1234567890))+1)
Làm xong mà hổng biết mình làm gì nữa!!! Hic!
 
Lần chỉnh sửa cuối:
Hihi, thì đã bảo làm theo dữ liệu của chủ topic thôi mà

Tức là trong chuỗi đó chỉ chứa một chuỗi con là số
Đặt tường hợp ngược lại "Minhthien321 chuyển tiền 123456789 cho ai đó ....." thì Find cũng "tèo"
Việc sử dụng Find thì đã làm từ lâu, muốn thử các cái mới í mà
Híc
Hình như anh đọc chưa rõ yêu cầu thì phải
Trong chuổi có số gì mặc kệ nó, nằm ở vị trí nào cũng mặc kệ luôn... miễn sao anh tìm ra được số 2909 đầu tiên và khoảng trắng sau nó là được rồi
Thiết nghĩ yêu cầu này quá đơn giản và tác giả cũng đã mô tả quá rõ ràng ---> Chỉ tại mọi người muốn làm theo hướng phức tạp thì đành chịu khổ vậy
 
Lần chỉnh sửa cuối:
Em xin ví dụ lại
1. Nguyen Van A 2909-2.000.000
2. Nguyen Van A 2909-2.000.000 chuyển tiền
3. Nguyen Van A 2909
4. 2909
Vì người nhập là khác nhau nên dữ liệu không đồng nhất

Giờ em muốn lọc ra các kết quả như sau:
1. 2909-2.000.000
2. 2909-2.000.000
3. 2909
4. 2909
Nếu không có dữ liệu thì nó bằng chính nó (thế cho dễ). -0-/. Hoặc nếu toàn có chữ thì cũng bằng chính nó luôn, vì rất hay bị lỗi #Value
Mong mọi người giúp đỡ. (Dữ liệu ở dưới dạng text toàn bộ).
 
Em xin ví dụ lại
1. Nguyen Van A 2909-2.000.000
2. Nguyen Van A 2909-2.000.000 chuyển tiền
3. Nguyen Van A 2909
4. 2909
Vì người nhập là khác nhau nên dữ liệu không đồng nhất

Giờ em muốn lọc ra các kết quả như sau:
1. 2909-2.000.000
2. 2909-2.000.000
3. 2909
4. 2909
Nếu không có dữ liệu thì nó bằng chính nó (thế cho dễ). -0-/. Hoặc nếu toàn có chữ thì cũng bằng chính nó luôn, vì rất hay bị lỗi #Value
Mong mọi người giúp đỡ. (Dữ liệu ở dưới dạng text toàn bộ).
Tôi nghĩ công thức bạn cần là:
PHP:
=IF(COUNTIF($A1,"*2909*"),MID($A1,FIND("2909",$A1),FIND(" ",$A1&" ",FIND("2909",$A1))-FIND("2909",$A1)),"")
Với A1 là cell chứa chuổi gốc
Công thức ở trên, nếu không tìm thấy số 2909 thì sẽ trả về kết quả rổng. Nếu bạn muốn "bằng chính nó" thì sửa thành:
PHP:
=IF(COUNTIF($A1,"*2909*"),MID($A1,FIND("2909",$A1),FIND(" ",$A1&" ",FIND("2909",$A1))-FIND("2909",$A1)),$A1)
 
Các phương pháp tách số từ chuổi và ngược lại, đề nghị post tại đây.

Nhờ cách anh chị giúp giùm cách tách số:

ví dụ ô A1 là 3841142158863

ra kết quả ô A2 là 4215886
(7 chữ số từ vị trí thứ 6 đến thứ 12)
Cám ơn nhiều
 
Dùng hàm mid đi bạn
=mid(3841142158863;6;7)
 
Nhờ cách anh chị giúp giùm cách tách số:

ví dụ ô A1 là 3841142158863

ra kết quả ô A2 là 4215886
(7 chữ số từ vị trí thứ 6 đến thứ 12)
Cám ơn nhiều

Có phải vầy không ta?
PHP:
 A2=MID(A1,6,7)
Bạn đọc được điều kiện mà sao ko lấy được số mình muốn nhỉ???
 
Tách số ra khỏi đoạn text

Giúp mình các bạn ơi!

Mình dùng một chương trình và xử lý ra một đoạn định dạng text sau:
1 VAR1 1,3718 ,1754
2 VAR2 ,9076 ,3231
3 VAR3 ,7207 -,8232
4 VAR4 ,6796 ,4715
5 VAR5 ,2444 -1,0426
6 VAR6 ,1249 ,9906
7 VAR7 -1,3752 -,2585
8 VAR8 -2,6738 ,1636

Mình cần tách ra thành 4 cột với 2 cột cuối là số để mình có thể cộng trừ, nhân chia...

Mình có gửi kèm file ví dụ. Các bạn chỉ mình cách làm sao cho cột A thành 4 cột C, D, E, F.

Cảm ơn các bạn!
 

File đính kèm

  • Vi du.xls
    21.5 KB · Đọc: 70
Giúp mình các bạn ơi!

Mình dùng một chương trình và xử lý ra một đoạn định dạng text sau:
1 VAR1 1,3718 ,1754
2 VAR2 ,9076 ,3231
3 VAR3 ,7207 -,8232
4 VAR4 ,6796 ,4715
5 VAR5 ,2444 -1,0426
6 VAR6 ,1249 ,9906
7 VAR7 -1,3752 -,2585
8 VAR8 -2,6738 ,1636

Mình cần tách ra thành 4 cột với 2 cột cuối là số để mình có thể cộng trừ, nhân chia...

Giúp mình các bạn ơi!

Mình dùng một chương trình và xử lý ra một đoạn định dạng text sau:
1 VAR1 1,3718 ,1754
2 VAR2 ,9076 ,3231
3 VAR3 ,7207 -,8232
4 VAR4 ,6796 ,4715
5 VAR5 ,2444 -1,0426
6 VAR6 ,1249 ,9906
7 VAR7 -1,3752 -,2585
8 VAR8 -2,6738 ,1636

Mình cần tách ra thành 4 cột với 2 cột cuối là số để mình có thể cộng trừ, nhân chia...

Cách đơn giản nhất là dùng chức năng Text to column, bằng cách
data --> chọn text to column --> chọn dấu phân cách là Comma trong mục Delimiters --> OK
bạn có thể tự làm nhanh chóng,
 
Cách đơn giản nhất là dùng chức năng Text to column, bằng cách
data --> chọn text to column --> chọn dấu phân cách là Comma trong mục Delimiters --> OK
bạn có thể tự làm nhanh chóng,
Bài này không dùng Text to column được rồi, vì các phần tử của chuổi cách nhau bằng ký tự CHAR(160)
-------------
Dùng công thức này tại cell B1:
PHP:
=TRIM(MID(SUBSTITUTE(TRIM(SUBSTITUTE($A1,CHAR(160)," "))," ",REPT(" ",255)),(COLUMNS($A:A)-1)*255+1,255))
Kéo fill sang E1 và kéo fill xuống
 
Bài này không dùng Text to column được rồi, vì các phần tử của chuổi cách nhau bằng ký tự CHAR(160)
-------------
Dùng công thức này tại cell B1:
PHP:
=TRIM(MID(SUBSTITUTE(TRIM(SUBSTITUTE($A1,CHAR(160)," "))," ",REPT(" ",255)),(COLUMNS($A:A)-1)*255+1,255))
Kéo fill sang E1 và kéo fill xuống

Đúng là không down file về không biết,
NHƯNG vẫn dùng Text Column được, nếu phát hiện ra đó là Char(160), thì

data --> chọn text to column --> chọn other và gõ Alt+0160 --> OK
là vẫn có kết quả
 
Đúng là không down file về không biết,
NHƯNG vẫn dùng Text Column được, nếu phát hiện ra đó là Char(160), thì

data --> chọn text to column --> chọn other và gõ Alt+0160 --> OK
là vẫn có kết quả
Vì có rất nhiều ký tự CHAR(160) nên dù có tách ra được thì việc "dọn dẹp" cũng hơi mệt à nha
Thí nghiệm biết liền chứ gì
 
Vì có rất nhiều ký tự CHAR(160) nên dù có tách ra được thì việc "dọn dẹp" cũng hơi mệt à nha
Thí nghiệm biết liền chứ gì

pác đừng để ý tiểu tiết thế, hi hiiiiiii, thực ra đúng là dọn dẹp mệt,

nhưng mong là cách cho người khác có vấn đề tương tự áp dụng

Còn chủ topic nên áp dụng cách của ndu... nhé
 
Cảm ơn các cao thủ đã nhiệt tình giúp đỡ.

Nay tiện đây thì mình xin hỏi thêm luôn, đó là:

+ CHAR(160) là gì thế :D

+ Mình muốn tìm hiểu thêm về các vấn đề này của excel thì có thể tham khảo giáo trình nào?

Một lần nữa xin cảm ơn các bạn đã nhiệt tình giúp đở!
 
Mong các đàn anh giúp đỡ.
Em có nhiều chuỗi có độ dài và số ký tự khác nhau phân cách bằng khoảng trắng.
Ví dụ:
"tôi có một chuỗi 123456 abc"
"tôi còn có một chuỗi khác 12 abcdefgh"
Bây giờ em muốn tách text có vị trí thứ 2 và thứ 3 tính từ cuối mỗi chuỗi thì phải đặt công thức thế nào ( "chuỗi" và "123456" trong chuỗi đầu, "khác" và "12" trong chuỗi thứ 2 ) ?
 
Mong các đàn anh giúp đỡ.
Em có nhiều chuỗi có độ dài và số ký tự khác nhau phân cách bằng khoảng trắng.
Ví dụ:
"tôi có một chuỗi 123456 abc"
"tôi còn có một chuỗi khác 12 abcdefgh"
Bây giờ em muốn tách text có vị trí thứ 2 và thứ 3 tính từ cuối mỗi chuỗi thì phải đặt công thức thế nào ( "chuỗi" và "123456" trong chuỗi đầu, "khác" và "12" trong chuỗi thứ 2 ) ?

Cho các chuỗi trên bắt đầu từ ô A1, A2,...
Dùng tạm cái này:
PHP:
=LEFT(TRIM(RIGHT(SUBSTITUTE(TRIM(A1)," ",REPT(" ",100)),300)),FIND(" ",SUBSTITUTE(TRIM(RIGHT(SUBSTITUTE(TRIM(A1)," ",REPT(" ",100)),300))," ","",1)))
Nếu bạn có file thực tế thì nhiều người giúp hơn hvà đưa ra giải đáp tốt hơn
 
Mong các đàn anh giúp đỡ.
Em có nhiều chuỗi có độ dài và số ký tự khác nhau phân cách bằng khoảng trắng.
Ví dụ:
"tôi có một chuỗi 123456 abc"
"tôi còn có một chuỗi khác 12 abcdefgh"
Bây giờ em muốn tách text có vị trí thứ 2 và thứ 3 tính từ cuối mỗi chuỗi thì phải đặt công thức thế nào ( "chuỗi" và "123456" trong chuỗi đầu, "khác" và "12" trong chuỗi thứ 2 ) ?
Gỉả sử ô A1 chứa chuỗi:
Mã:
=MID($A$1,LARGE(vitri,3)+1,LARGE(vitri,1)-LARGE(vitri,3))
Nhấn Ctrol-shift-enter để kết thúc.
với name vitri:
Mã:
=IF(MID($A$1,ROW(INDIRECT("1:"&LEN($A$1))),1)=" ",ROW(INDIRECT("1:"&LEN($A$1))),"")
 
Web KT
Back
Top Bottom