Trích xuất một cụm cả text và ký tự

Liên hệ QC

huemtd

Thành viên mới
Tham gia
11/8/09
Bài viết
27
Được thích
8
Kính gửi các anh chị,

Hàng ngày em phải làm báo cáo và dưới đây và mô tả của NVL rất nhiều, em nhờ các anh chị giúp xem có cách nào viết code để lấy riêng ra một cụm gồm ký tự và text (như màu đỏ bên dưới) không ? vì các dòng mô tả này không theo qui luật nào?

nhưng theo em thấy chỉ có một điểm duy nhất là cứ GT-xxxxx sẽ bao gồm (từ 6-9 ký tự), nhưng vì lúc thì nằm ở chỗ này,lúc nằm chỗ kia, nên em không biết cách lấy nó ra như thế nào? rất mong các anh chị giúp đỡ.

CUPION-CUSE(3TA);GT-P0000,HIPS,T0.8,157
CUPION-CUSE )(GT-P0000) (3TA),HIPS,T0.8,157
CUPION-CUSE(3TA)-,HIPS,T-GT-S0000.8,157 ---->VD dòng này lấy ra được GT-P0000 (chỉ lấy cụm nằm sau GT-S0000 và chỉ cần 6-9 ký tự là ok, vì nếu không, nó sẽ lấy sang các ký tự khác ) và nằm sang một cột bên cạnh


Chân thành cảm ơn.
Hue
 

File đính kèm

  • trich xuat.xls
    26.9 KB · Đọc: 29
Lần chỉnh sửa cuối:
Kính gửi các anh chị,

Hàng ngày em phải làm báo cáo và dưới đây và mô tả của NVL rất nhiều, em nhờ các anh chị giúp xem có cách nào viết code để lấy riêng ra một cụm gồm ký tự và text (như màu đỏ bên dưới) không ? vì các dòng mô tả này không theo qui luật nào?

nhưng theo em thấy chỉ có một điểm duy nhất là cứ GT-xxxxx sẽ bao gồm (từ 6-9 ký tự), nhưng vì lúc thì nằm ở chỗ này,lúc nằm chỗ kia, nên em không biết cách lấy nó ra như thế nào? rất mong các anh chị giúp đỡ.

CUPION-CUSE(3TA);GT-P0000,HIPS,T0.8,157
CUPION-CUSE )(GT-P0000) (3TA),HIPS,T0.8,157
CUPION-CUSE(3TA)-,HIPS,T-GT-S0000.8,157 ---->VD dòng này lấy ra được GT-P0000 (chỉ lấy cụm nằm sau GT-S0000 và chỉ cần 6-9 ký tự là ok, vì nếu không, nó sẽ lấy sang các ký tự khác ) và nằm sang một cột bên cạnh


Chân thành cảm ơn.
Hue
Bạn đưa file lên để mọi người nghiên cứu thử xem
 
Upvote 0
Cảm ơn bạn. mình đã gửi lên bài viết #1 rồi. Nhưng do bảo mật cty, nên không biết bạn có nhận đc không? Bạn thử mở xem nhé. Còn nếu không mở được thì cái này mình mô tả như sau:
VD cột A có nhiều dữ liệu mô tả hàng hóa, và cột B là KQ trích xuất các ký tự và số bắt đầu từ chữ GT-xxxxx (gồm cả ký từ và số là chữ). Có một vấn đề là GT-xxxxx nó không nằm theo một qui luật nào cả, có thể nó nằm ở giữa, ở cuối ...mặt khác có thể nó nằm sau dấu phảy hoặc trong ngoặc...

Rất mong nhận được sự trợ giúp.
Hue
 
Upvote 0
Cảm ơn bạn. mình đã gửi lên bài viết #1 rồi. Nhưng do bảo mật cty, nên không biết bạn có nhận đc không? Bạn thử mở xem nhé. Còn nếu không mở được thì cái này mình mô tả như sau:
VD cột A có nhiều dữ liệu mô tả hàng hóa, và cột B là KQ trích xuất các ký tự và số bắt đầu từ chữ GT-xxxxx (gồm cả ký từ và số là chữ). Có một vấn đề là GT-xxxxx nó không nằm theo một qui luật nào cả, có thể nó nằm ở giữa, ở cuối ...mặt khác có thể nó nằm sau dấu phảy hoặc trong ngoặc...

Rất mong nhận được sự trợ giúp.
Hue

File của bạn bị hỏng rồi. Nếu bạn mở được thì copy paste value ra một file mới rồi gửi lên lại.
 
Upvote 0
kính gửi các anh chị,

hàng ngày em phải làm báo cáo và dưới đây và mô tả của nvl rất nhiều, em nhờ các anh chị giúp xem có cách nào viết code để lấy riêng ra một cụm gồm ký tự và text (như màu đỏ bên dưới) không ? Vì các dòng mô tả này không theo qui luật nào?

Nhưng theo em thấy chỉ có một điểm duy nhất là cứ gt-xxxxx sẽ bao gồm (từ 6-9 ký tự), nhưng vì lúc thì nằm ở chỗ này,lúc nằm chỗ kia, nên em không biết cách lấy nó ra như thế nào? Rất mong các anh chị giúp đỡ.

Cupion-cuse(3ta);gt-p0000,hips,t0.8,157
cupion-cuse )(gt-p0000) (3ta),hips,t0.8,157
cupion-cuse(3ta)-,hips,t-gt-s0000.8,157 ---->vd dòng này lấy ra được gt-p0000 (chỉ lấy cụm nằm sau gt-s0000 và chỉ cần 6-9 ký tự là ok, vì nếu không, nó sẽ lấy sang các ký tự khác ) và nằm sang một cột bên cạnh


chân thành cảm ơn.
Hue
thì dùng công thức này nhé
PHP:
=mid(a1,find("gt-",a1),8)
do file của bạn bị hỏng nên tôi đặt dữ liệu ở cột a
 
Upvote 0
thì dùng công thức này nhé
PHP:
=mid(a1,find("gt-",a1),8)
do file của bạn bị hỏng nên tôi đặt dữ liệu ở cột a
Người ta nói rằng:
Nhưng theo em thấy chỉ có một điểm duy nhất là cứ gt-xxxxx sẽ bao gồm (từ 6-9 ký tự),.......
cupion-cuse(3ta)-,hips,t-gt-s0000.8,157 ---->vd dòng này lấy ra được gt-p0000 (chỉ lấy cụm nằm sau gt-s0000 và chỉ cần 6-9 ký tự là ok, vì nếu không, nó sẽ lấy sang các ký tự khác ) và nằm sang một cột bên cạnh
Thế mà mình chơi luôn 8 ký tự mới liều. Híc
Dù sao tỷ lệ trúng cũng là 1/ 4
+-+-+-+Híc+-+-+-+
 
Upvote 0
người ta nói rằng:


Thế mà mình chơi luôn 8 ký tự mới liều. Híc
dù sao tỷ lệ trúng cũng là 1/ 4
+-+-+-+híc+-+-+-+
người ta nói từ 6-9 ký tự thi em dùng 8 là hợp lý chứ bác cò. Ngươi ta đâu nói là bắt buộc 6,hay 9 đâu .
ẹc ẹc
THỨ 2 BÁC XEM
gt-xxxxx sẽ bao gồm (từ 6-9 ký tự),.......CÓ 8 KÝ TỰ MAU XANH

Cupion-cuse(3ta);gt-p0000,hips,t0.8,157
cupion-cuse )(gt-p0000) (3ta),hips,t0.8,157
cupion-cuse(3ta)-,hips,t-gt-s0000.8,157 ----CÓ 8 KÝ TỰ MÀU ĐỎ
THỰC RA NẾU LẤY 9 KÝ TỰ , TỨC "GT-XXXXXX" THÌ CHỈ CẦN THÊM DZẦY
PHP:
=IF(ISNUMBER(--RIGHT(MID(A1,FIND("GT-",A1),9))),MID(A1,FIND("GT-",A1),9),SUBSTITUTE(MID(A1,FIND("GT-",A1),9),RIGHT(MID(A1,FIND("GT-",A1),9)),""))
 
Lần chỉnh sửa cuối:
Upvote 0
Người ta nói rằng:


Thế mà mình chơi luôn 8 ký tự mới liều. Híc
Dù sao tỷ lệ trúng cũng là 1/ 4
+-+-+-+Híc+-+-+-+
Vậy thì pác Cò thử hộ công thức này

Bao nhiêu ký tự số cũng được, 6-9 hay hơn nữa, miễn là lấy hết các số sau gt-p/s
thì dùng công thức mảng sau,

tại ô kết quả
PHP:
=MID(A2,FIND("gt-",A2),MATCH(FALSE,IF(ROW(INDIRECT("1:"&LEN(A2)))<FIND("gt-",A2)+4,TRUE, ISNUMBER(MID(A2,ROW(INDIRECT("1:"&LEN(A2))),1)*1)),0)-FIND("gt-",A2))
(Ctrl+Shift+Enter kết thúc nhập công thức n)

ô A2 chứa chuỗi cần tách,
 
Lần chỉnh sửa cuối:
Upvote 0
Web KT
Back
Top Bottom