Dò tìm theo chuỗi ký tự

Liên hệ QC

bin.vcsc

Thành viên hoạt động
Tham gia
6/12/13
Bài viết
125
Được thích
12
Gửi các anh chị và các bạn

Mình có danh sách hàng cần đi phát và cần giữ lại.
Sheet 1: Danh sách tổng
Sheet 2: Danh sách các khu vực không đi phát hàng, nếu khách hàng ở khu vực này thì hàng sẽ không đi phát và sẽ được giữ lại.

Vấn đề đặt ra là địa chỉ của khách hàng ở hai cột khác nhau và có độ dài, ngắn khác nhau. Mình muốn dò tìm địa chỉ của khách hàng ở sheet 1 so với khu vực không phát hàng ở sheet 2.
Nếu địa chỉ khách hàng có giá trị trùng với giá trị ở sheet 2 thì sẽ trả về kết quả "Giữ lại không đi phát".

Mong anh chị và các bạn hỗ trợ và hướng dẫn giúp ah.
 

File đính kèm

  • 201007 MANI_TEST.xlsx
    29.2 KB · Đọc: 13
Thử thế này xem =IF(MAX(IFERROR(FIND('Khu vuc khong di phat hang'!$B$2:$B$194;D2);0))>0;"Giữ lại không đi phát";"") bấm CSE
 

File đính kèm

  • 201007 MANI_TEST.xlsx
    34 KB · Đọc: 6
Code thì chờ bạn khác giúp mình không biết, mà đúng ra muốn code VBA thì bạn phải đăng bài bên Lập trình mới nhanh có bạn giúp
 
Cám ơn bạn @hongtrang26 nhiều lắm ah.
Bạn có thể giải thích giúp mình nguyên tắc hoạt động của hàm này được không ah?
Có gì đâu thì find là tìm kiếm nhưng thay vì tìm kiếm một giá trị thì mình tìm nhiều giá trị ví dụ mình tìm lần lượt 1 2 3 có trong chuỗi AB2CD ở đây có 2 xuất hiện trong chuỗi và ở vị trí thứ 3 còn 1 3 không có sẽ báo lỗi nên lồng IFERROR để lỗi trả giá trị bằng 0 max(0;3;0)=3>0 tức là có giá trị tìm xuất hiện trong chuỗi; nếu chuỗi AB5CD thì là max(0;0;0)=0 còn lại của hàm if
 
Thử thế này xem =IF(MAX(IFERROR(FIND('Khu vuc khong di phat hang'!$B$2:$B$194;D2);0))>0;"Giữ lại không đi phát";"") bấm CSE

Cám ơn bạn @hongtrang26 ah.

Mình có cách nào để dò giá trị ở cả hai cột không ah?

Ví dụ như ở trường hợp bên dưới. Mình chỉ giữ lại những khách hàng có địa chỉ ở TAN PHU + DONG NAI thôi. Còn những TAN PHU khác thì mình vẫn cho đi phát bình thường ah.

Cám ơn bạn đã quan tâm và hỗ trợ nhiều lắm ah
1602127118089.png
 
Cám ơn bạn @hongtrang26 ah.

Mình có cách nào để dò giá trị ở cả hai cột không ah?

Ví dụ như ở trường hợp bên dưới. Mình chỉ giữ lại những khách hàng có địa chỉ ở TAN PHU + DONG NAI thôi. Còn những TAN PHU khác thì mình vẫn cho đi phát bình thường ah.
Thì vẫn công thức đấy có cả hai nội dung thì thêm and và tìm nó 2 lần thôi kiểu IF(and(max(...);max(...))...)
 
Thì vẫn công thức đấy có cả hai nội dung thì thêm and và tìm nó 2 lần thôi kiểu IF(and(max(...);max(...))...)

@hongtrang26 ơi mình thêm and thì kết quả chạy ra không đúng. Làm sao để chạy được:
TAN PHU+DONG NAI => Giữ lại không đi phát
TAN PHU+HO CHI MINH => "" - Đi phát bình thường

Bạn xem giúp mình đã ghi công thức đúng chưa ah? Cám ơn nhiều nhiều.
=IF(AND(MAX(IFERROR(FIND('Khu vuc khong di phat hang'!$B$2:$B$194,D3),0),MAX(IFERROR(FIND('Khu vuc khong di phat hang'!$C$2:$C$194,D3),0))))>0,"Giữ lại không đi phát","")

1602131368755.png
 
Cẩn thận với các thế lực thù địch, đang thời điểm nhạy cảm...
Dòng cuối cùng sheet Manifest

1602132036774.png
 
"
địa chỉ của khách hàng ở hai cột khác nhau và có độ dài, ngắn khác nhau
"
 

File đính kèm

  • Khong phat_.xlsx
    41.7 KB · Đọc: 8
Cẩn thận với các thế lực thù địch, đang thời điểm nhạy cảm...
Dòng cuối cùng sheet Manifest
...
Cái sheet này rất là kinh rợn. Chỗ rất đúng và chỗ rất sai, không biết đâu mà mò.

Điển hình, tiêu đề cột dùng tiếng Anh khá chuẩn ở chỗ "Recip Addr", recip là viết tắt từ recipient (người/nơi nhận)
Nhưng cái tiêu đề cột "Recip Co." thì rất tệ. "Org" (organisation) hay "Nm" (Name) mới đúng
 
@hongtrang26 ơi mình thêm and thì kết quả chạy ra không đúng. Làm sao để chạy được:
TAN PHU+DONG NAI => Giữ lại không đi phát
TAN PHU+HO CHI MINH => "" - Đi phát bình thường

Bạn xem giúp mình đã ghi công thức đúng chưa ah? Cám ơn nhiều nhiều.
=IF(AND(MAX(IFERROR(FIND('Khu vuc khong di phat hang'!$B$2:$B$194,D3),0),MAX(IFERROR(FIND('Khu vuc khong di phat hang'!$C$2:$C$194,D3),0))))>0,"Giữ lại không đi phát","")
sai rồi =IF(AND(MAX(IFERROR(FIND('Khu vuc khong di phat hang'!$B$2:$B$194;D2);0))>0;MAX(IFERROR(FIND('Khu vuc khong di phat hang'!$C$2:$C$194;D2);0))>0);"Giữ lại không đi phát";"")
 
Web KT
Back
Top Bottom