Tìm tổng chuỗi con trong chuỗi lớn

Liên hệ QC
"Bắt giò" tiếp
- Sửa cell A2 từ MCD+2AUL thành MCD+2 AUL ==> kết quả sai
- Sửa cell A2 từ MCD+2AUL thành MCD+2AUL2 ==> kết quả sai
Ẹc... Ẹc...
Từ đầu đưa ra mỗi mã có 3 ký tự, nếu >3 thì phía trước là Number, dấu tách chuỗi là dấu "+", không có dấu cách, không có mọi cái luxubu.
Nhập dữ liệu không đúng "quy luật" thì Msgbox báo lỗi. Thoát, không làm gì nữa. Để tác giả tính bằng mắt + máy tính bỏ túi.
Híc!
 
Từ đầu đưa ra mỗi mã có 3 ký tự, nếu >3 thì phía trước là Number, dấu tách chuỗi là dấu "+", không có dấu cách, không có mọi cái luxubu.
Nhập dữ liệu không đúng "quy luật" thì Msgbox báo lỗi. Thoát, không làm gì nữa. Để tác giả tính bằng mắt + máy tính bỏ túi.
Híc!
Hổng biết đâu nha anh. Nhiều khi có mã AUL, xong họ lại thấy thiếu và bỗ sung thêm AUL2 cũng không chừng
Em "bắt giò" không phải là đùa đâu. Tại vì có lần em gặp bài toán dạng này rồi (mã A lại là con của mã B).
Nói chung cách đặt mã như vậy là không hợp lý nhưng đời mà, chuyện gì mà chẳng có
 
Hình như là bài #11.6 thì phải (tôi canh canh thấy hơi.. méo méo chút) ++--//*
Thôi, chờ tác giả xác nhận vậy. Mà có thêm trừ nhân chia nữa là... vui cmn luôn á
Ẹc... Ẹc...
Bác vui tính quá :))
Bài đã được tự động gộp:

Đã né nó rồi thầy còn hê lên nữa (mất 1 cử cà phe buổi sáng dzồi!) :(
Công thức điều chỉnh dài thêm chút nha chủ thớt @hoangtechu :
Mã:
E2=SUM(IFERROR(--SUBSTITUTE(SUBSTITUTE(" "&TRIM(MID(SUBSTITUTE(SUBSTITUTE($A$2:$A$36," ","")&"+","+",REPT(" ",100)),(COLUMN($A:$J)-1)*100+1,100))&" "," "&D2&" ",1),D2&" ",""),))
Kết thúc bằng Ctrl+Shift+Enter.

Thân
các bác thật pro, chắc em dùng cái công thức đầu tiên của bác cũng đủ xài rồi, cho em nhận làm đồ đệ được không bác :D
Bài đã được tự động gộp:

Đã né nó rồi thầy còn hê lên nữa (mất 1 cử cà phe buổi sáng dzồi!) :(
Công thức điều chỉnh dài thêm chút nha chủ thớt @hoangtechu :
Mã:
E2=SUM(IFERROR(--SUBSTITUTE(SUBSTITUTE(" "&TRIM(MID(SUBSTITUTE(SUBSTITUTE($A$2:$A$36," ","")&"+","+",REPT(" ",100)),(COLUMN($A:$J)-1)*100+1,100))&" "," "&D2&" ",1),D2&" ",""),))
Kết thúc bằng Ctrl+Shift+Enter.

Thân
Anh có thể giải thích công thức này được không ạ?
dài quá em không thấm được :)
em cảm ơn
 
cho em nhận làm đồ đệ được không bác :D
Bạn "gõ" nhầm cửa "Khổng" rồi! khà khà khà. :D
Bạn vào diễn đàn này, muốn "bái sư" thì nên lựa đúng nơi đúng chỗ mà bái, vào trang này mà tự nghiên cứu tìm "Chân sư":
https://www.giaiphapexcel.com/diendan/members/?key=most_likes
Chứ cỡ tôi còn lượm mót trên diễn đàn này, chỉ có dạy "ăn chơi sa đọa" thì đđđươơợccc...!
/-*+//-*+//-*+/
Khoảng chiều chiều, nhín chút thời gian tôi sẽ giải thích cho bạn công thức mới để bạn nghiền ngẫm hén!
 
Như đã hứa, bạn xem hình và file kèm.
Thân
View attachment 201380
bác giỏi quá lại còn tốt bụng chỉ bảo nhiệt tình, em cảm ơn nhiều lắm .
Nhân đây em có 1 vấn đề muốn nhờ anh xem giúp ạ:
em có cột đơn giá cần điền , anh xem file đính kèm xem có giúp em đc không ạ. em cảm ơn các pro nhiều lắm
Bài đã được tự động gộp:

Bạn "gõ" nhầm cửa "Khổng" rồi! khà khà khà. :D
Bạn vào diễn đàn này, muốn "bái sư" thì nên lựa đúng nơi đúng chỗ mà bái, vào trang này mà tự nghiên cứu tìm "Chân sư":
https://www.giaiphapexcel.com/diendan/members/?key=most_likes
Chứ cỡ tôi còn lượm mót trên diễn đàn này, chỉ có dạy "ăn chơi sa đọa" thì đđđươơợccc...!
/-*+//-*+//-*+/
Khoảng chiều chiều, nhín chút thời gian tôi sẽ giải thích cho bạn công thức mới để bạn nghiền ngẫm hén!
em nghĩ giỏi nhưng còn có duyên mới được anh ạ :), hy vọng có duyên được đồ đệ của anh.
 

File đính kèm

  • GPE_CongMa (1).xlsx
    14.6 KB · Đọc: 6
Nhân đây em có 1 vấn đề muốn nhờ anh xem giúp ạ:
em có cột đơn giá cần điền , anh xem file đính kèm xem có giúp em đc không ạ
Thật sự tôi không ưa chuộng lắm yêu cầu mới này, vì nó không mang lại hiệu quả gì để áp dụng cho thực tế cả, ngoài 1 đống công thức "gớm ghiếc" chả ai muốn nhìn. Nếu như buộc lòng phải tính toán thành tiền, bạn nên tách thành 3 cột Mã, SL, Thành tiền, rồi dùng công thức đơn giản để xử lý thì tốt nhất.

Như yêu cầu đếm SL các ký tự mã ở yêu cầu 1, chúng ta có thể dùng công thức đó cho việc tính công, với việc ghi nhận công trong ngày như: "0.5T+1.75S"--> "đi trễ 0.5h và về sớm 1.75h"; Hoặc "1.5T+3.5TC"..v.v.. Cho nên, dù gì dù thì yêu cầu trước vẫn hay hơn.

Trong file đính kèm tôi đã thực hiện công thức, tuy nhiên không khuyến khích bạn tìm hiểu cũng như sẽ áp dụng (nếu có).

Thân
 

File đính kèm

  • GPE_CongMa.xlsx
    13.5 KB · Đọc: 8
Thật sự tôi không ưa chuộng lắm yêu cầu mới này, vì nó không mang lại hiệu quả gì để áp dụng cho thực tế cả, ngoài 1 đống công thức "gớm ghiếc" chả ai muốn nhìn. Nếu như buộc lòng phải tính toán thành tiền, bạn nên tách thành 3 cột Mã, SL, Thành tiền, rồi dùng công thức đơn giản để xử lý thì tốt nhất.

Như yêu cầu đếm SL các ký tự mã ở yêu cầu 1, chúng ta có thể dùng công thức đó cho việc tính công, với việc ghi nhận công trong ngày như: "0.5T+1.75S"--> "đi trễ 0.5h và về sớm 1.75h"; Hoặc "1.5T+3.5TC"..v.v.. Cho nên, dù gì dù thì yêu cầu trước vẫn hay hơn.

Trong file đính kèm tôi đã thực hiện công thức, tuy nhiên không khuyến khích bạn tìm hiểu cũng như sẽ áp dụng (nếu có).

Thân
Dạ, em cũng nghĩ là sẽ khó thực hiện nhưng thực sự đó là việc của em đang phải làm. Trước khi lên chia sẻ ở đây thì e toàn phải tính thủ công anh ạ :(((
Em làm cho 1 trang bán hàng ol, đó chính là mã hàng theo đơn, bây giờ bên đó cần tính lỗ lãi nên cần tìm giá vốn. Em post file gốc cho anh xem luôn đây ạ
 

File đính kèm

  • Đơn hàng ngày 8-8.xlsx
    17.4 KB · Đọc: 5
Dạ, em cũng nghĩ là sẽ khó thực hiện nhưng thực sự đó là việc của em đang phải làm. Trước khi lên chia sẻ ở đây thì e toàn phải tính thủ công anh ạ :(((
Em làm cho 1 trang bán hàng ol, đó chính là mã hàng theo đơn, bây giờ bên đó cần tính lỗ lãi nên cần tìm giá vốn. Em post file gốc cho anh xem luôn đây ạ
Tại sao bạn không thử cấu trúc lại file theo dõi bán hàng, vừa đơn giản vừa dễ theo dõi tiền hàng
Xem file kèm như 1 gợi ý.
Thân
 

File đính kèm

  • Đơn hàng ngày 8-8.xlsx
    138.2 KB · Đọc: 6
Tại sao bạn không thử cấu trúc lại file theo dõi bán hàng, vừa đơn giản vừa dễ theo dõi tiền hàng
Xem file kèm như 1 gợi ý.
Thân
Anh ơi, em muốn làm như thế, nhưng file này em ko được sửa anh ạ ,huhu
các bạn chốt đơn sẽ nhập file đó sau đó mang đi in, mà mấy bạn đó ko biết excel, mà cái đó em tính tiếp vậy em cảm ơn anh nhiều lắm.
À, anh cho em hỏi
em dùng công thức của anh đưa vào gg driver sao nó báo lỗi này anh nhỉ?
1533783266955.png
 
Anh ơi, em muốn làm như thế, nhưng file này em ko được sửa anh ạ ,huhu
các bạn chốt đơn sẽ nhập file đó sau đó mang đi in, mà mấy bạn đó ko biết excel, mà cái đó em tính tiếp vậy em cảm ơn anh nhiều lắm.
À, anh cho em hỏi
em dùng công thức của anh đưa vào gg driver sao nó báo lỗi này anh nhỉ?
View attachment 201428
Bạn đưa link của GoogleSheet lên đây đi.
Thân
 
1/ Theo cách cũ: Dùng trên Google Sheets bạn phải điều chỉnh như sau: Sheet "Tổng Hợp......."

D1=ARRAYFORMULA(sumproduct(isnumber(search({" ",1,2,3,4,5,6,7,8,9}&B1 ," "&substitute('Trang tính1'!$E$2:$E$341,"+"," ")))*{1,1,2,3,4,5,6,7,8,9}))

Lưu ý là dấu "," trong các Mảng: {" ",1,2,3,4,5,6,7,8,9} và {1,1,2,3,4,5,6,7,8,9}, chứ không phải dấu ";" như trên file của bạn nha!

2/ Tôi gửi thêm cho bạn một gợi ý khác, bạn thử mang lên Google Sheets, bạn sẽ thấy cách mới đơn giản hơn nhiều.
Xem file kèm.

Thân
 

File đính kèm

  • Donhang0808.xlsx
    45.5 KB · Đọc: 6
1/ Theo cách cũ: Dùng trên Google Sheets bạn phải điều chỉnh như sau: Sheet "Tổng Hợp......."

D1=ARRAYFORMULA(sumproduct(isnumber(search({" ",1,2,3,4,5,6,7,8,9}&B1 ," "&substitute('Trang tính1'!$E$2:$E$341,"+"," ")))*{1,1,2,3,4,5,6,7,8,9}))

Lưu ý là dấu "," trong các Mảng: {" ",1,2,3,4,5,6,7,8,9} và {1,1,2,3,4,5,6,7,8,9}, chứ không phải dấu ";" như trên file của bạn nha!

2/ Tôi gửi thêm cho bạn một gợi ý khác, bạn thử mang lên Google Sheets, bạn sẽ thấy cách mới đơn giản hơn nhiều.
Xem file kèm.

Thân
Vâng , em với Bác ý tưởng trùng nhau rồi ạ :)
trong lúc gửi cho anh, em cũng đã sửa công thức như file này. các bạn chốt đơn sẽ ko tách từng cột mã cho e, nên em sẽ làm việc đó bằng cột phụ thôi.
anh xem công thức từ cột F đến L giúp em, em tìm số lượng, nhưng mới giới hạn từ 1-9 được thôi ạ (lý do vì:
- nếu họ ghi mã hàng sau dấu + dùng hàm mid, chọn 2 giá trị sẽ vào dấu +,
- nếu người khác viết nó ở đầu nó sẽ báo lỗi) ạ
Em cảm ơn !
 

File đính kèm

  • ngày 8-8 (new).xlsx
    52.5 KB · Đọc: 3
Vâng , em với Bác ý tưởng trùng nhau rồi ạ :)
trong lúc gửi cho anh, em cũng đã sửa công thức như file này. các bạn chốt đơn sẽ ko tách từng cột mã cho e, nên em sẽ làm việc đó bằng cột phụ thôi.
anh xem công thức từ cột F đến L giúp em, em tìm số lượng, nhưng mới giới hạn từ 1-9 được thôi ạ (lý do vì:
- nếu họ ghi mã hàng sau dấu + dùng hàm mid, chọn 2 giá trị sẽ vào dấu +,
- nếu người khác viết nó ở đầu nó sẽ báo lỗi) ạ
Em cảm ơn !
Bạn xem cách này gọn hơn không?
https://docs.google.com/spreadsheets/d/16SWk_8BFRq7qOOE1qW-BrV5oi2uAw7I_3zUPhNnZahk/edit?usp=sharing
Thân
 
tuyệt vời anh ạ.
em chưa hiểu hiểu chỗ này lắm, anh có thể giải thích giúp em đc không?
LOOKUP(2,1/SEARCH('Mã SP'!$C$3:$C$87,TRIM(MID(SUBSTITUTE($E2&"+","+",REPT(" ",100)),(RIGHT(G$1)-1)*100+1,100))),'Mã SP'!$C$3:$C$87))

=IF(ISERROR(IF(G2<>"",--SUBSTITUTE(SUBSTITUTE(" "&TRIM(MID(SUBSTITUTE($E2&"+","+",REPT(" ",100)),(RIGHT(H$1)-1)*100+1,100))&" "," "&G2&" ",1),G2&" ",""),)),,IF(G2<>"",--SUBSTITUTE(SUBSTITUTE(" "&TRIM(MID(SUBSTITUTE($E2&"+","+",REPT(" ",100)),(RIGHT(H$1)-1)*100+1,100))&" "," "&G2&" ",1),G2&" ",""),))

Em dốt công thức mảng quá, anh có mở lớp dạy hoặc dạy ol không cho em theo học với nhé
 
Web KT
Back
Top Bottom