Tìm số hóa đơn trong chuỗi (1 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

Tôi tuân thủ nội quy khi đăng bài

thao nguyen01

Thành viên thường trực
Tham gia
8/12/19
Bài viết
252
Được thích
33
Kính gửi anh/chị trên diễn đàn,
Em bị vướng về việc lấy số hóa đơn trong chuỗi ạ. Em muốn lấy các số hóa đơn từ các chuỗi trong cột A, kết quả mong muốn của em là cột B ạ. Em làm công thức (có nhờ sự hỗ trợ của chat GPT) nhưng vẫn chưa ra kết quả mong muốn ạ (các ô màu đỏ chưa đúng ạ vì mất số đầu tiên của hóa đơn).
Anh chị xem giúp em, em cảm ơn nhiều ạ.
 

File đính kèm

Kính gửi anh/chị trên diễn đàn,
Em bị vướng về việc lấy số hóa đơn trong chuỗi ạ. Em muốn lấy các số hóa đơn từ các chuỗi trong cột A, kết quả mong muốn của em là cột B ạ. Em làm công thức (có nhờ sự hỗ trợ của chat GPT) nhưng vẫn chưa ra kết quả mong muốn ạ (các ô màu đỏ chưa đúng ạ vì mất số đầu tiên của hóa đơn).
Anh chị xem giúp em, em cảm ơn nhiều ạ.
Thử dùng công thức này:

=TEXTBEFORE(TRIM(TEXTAFTER(A2,{"hóa đơn số:","hd"}))&" "," ")
 
Kính gửi anh/chị trên diễn đàn,
Em bị vướng về việc lấy số hóa đơn trong chuỗi ạ. Em muốn lấy các số hóa đơn từ các chuỗi trong cột A, kết quả mong muốn của em là cột B ạ. Em làm công thức (có nhờ sự hỗ trợ của chat GPT) nhưng vẫn chưa ra kết quả mong muốn ạ (các ô màu đỏ chưa đúng ạ vì mất số đầu tiên của hóa đơn).
Anh chị xem giúp em, em cảm ơn nhiều ạ.
Mình dùng hàm tự tạo, bạn xem thử, không biết có đúng ý không.
 

File đính kèm

Bạn dùng thử công thức này
Mã:
=TRIM(LEFT(SUBSTITUTE(TRIM(RIGHT(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A2,"số: ","|"),"hd ","|"),"|",REPT(" ",99)),99))," ",REPT(" ",99)),99))
hoặc
=TRIM(LEFT(SUBSTITUTE(MID(A2,AGGREGATE(15,6,FIND(ROW($1:$10)-1,A2),1),99)," ",REPT(" ",99)),99))
 
Mình dùng hàm tự tạo, bạn xem thử, không biết có đúng ý không.
Dạ, kết quả ra đúng ạ. Em cảm ơn anh.
Bài đã được tự động gộp:

Bạn dùng thử công thức này
Mã:
=TRIM(LEFT(SUBSTITUTE(TRIM(RIGHT(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A2,"số: ","|"),"hd ","|"),"|",REPT(" ",99)),99))," ",REPT(" ",99)),99))
hoặc
=TRIM(LEFT(SUBSTITUTE(MID(A2,AGGREGATE(15,6,FIND(ROW($1:$10)-1,A2),1),99)," ",REPT(" ",99)),99))
Dạ, 2 cách đều ra đúng kết quả ạ. Em cảm ơn anh nhiều.
 
Kính gửi anh/chị trên diễn đàn,
Em bị vướng về việc lấy số hóa đơn trong chuỗi ạ. Em muốn lấy các số hóa đơn từ các chuỗi trong cột A, kết quả mong muốn của em là cột B ạ. Em làm công thức (có nhờ sự hỗ trợ của chat GPT) nhưng vẫn chưa ra kết quả mong muốn ạ (các ô màu đỏ chưa đúng ạ vì mất số đầu tiên của hóa đơn).
Anh chị xem giúp em, em cảm ơn nhiều ạ.
Góp thêm cách, tương đối giống của anh Tình bên trên, mình chỉ đổi Aggregate thôi.
Mã:
=TRIM(LEFT(SUBSTITUTE(MID(A2,MIN(FIND(ROW($1:$10)-1,A2&1/17)),99)," ",REPT(" ",20)),20))
 
Thử Power Query:

JavaScript:
let
     KetQua = Table.AddColumn(Excel.CurrentWorkbook(){[Name="Table1"]}[Content], "Số HĐ", each Text.Select([Dữ liệu], {"0".."9", "/"}))
in
    KetQua
 
Thử Power Query:

JavaScript:
let
     KetQua = Table.AddColumn(Excel.CurrentWorkbook(){[Name="Table1"]}[Content], "Số HĐ", each Text.Select([Dữ liệu], {"0".."9", "/"}))
in
    KetQua
Dạ, em thử trong query thì có một dòng chưa ra đúng mong muốn ạ, dòng: "Nhập hàng hóa đơn số: 00000165 (00ABC01-00001)"=>kết quả là: 00000165000100001 (kết quả đúng mong muốn của em: 00000165)
 
Dạ, em thử trong query thì có một dòng chưa ra đúng mong muốn ạ, dòng: "Nhập hàng hóa đơn số: 00000165 (00ABC01-00001)"=>kết quả là: 00000165000100001 (kết quả đúng mong muốn của em: 00000165)
Xin lỗi, tôi đọc lướt qua đề nên hiểu lầm, bạn thử mã sau:

JavaScript:
let
  KetQua = Table.AddColumn(Excel.CurrentWorkbook(){[Name="Table1"]}[Content], "Số HĐ",
    each Text.SplitAny(Text.Middle([Dữ liệu], Text.PositionOfAny([Dữ liệu], {"0".."9"})), " -("){0})
in
  KetQua
 
Xin lỗi, tôi đọc lướt qua đề nên hiểu lầm, bạn thử mã sau:

JavaScript:
let
  KetQua = Table.AddColumn(Excel.CurrentWorkbook(){[Name="Table1"]}[Content], "Số HĐ",
    each Text.SplitAny(Text.Middle([Dữ liệu], Text.PositionOfAny([Dữ liệu], {"0".."9"})), " -("){0})
in
  KetQua
Dạ, kết quả ra đúng ạ. Em cảm ơn anh.
 

Bài viết mới nhất

Back
Top Bottom