Cần giúp: Tra cứu thông tin của nhân viên từ dữ liệu có sẵn

Liên hệ QC

tiniluu123

Có bao giờ bạn tự hỏi "Tôi là ai?"
Tham gia
25/1/19
Bài viết
190
Được thích
99
Giới tính
Nam
Nghề nghiệp
HR
- Như trong hình tôi up bên dưới. Tôi đã tạo ra 2 Droplist Họ tên và Thông tin tra cứu từ chức năng Data Validation. Việc còn lại là cài công thức dò tìm làm sao để cho ra ô Kết quả. Tôi nghĩ mãi về If, Vlookup, Index, Match,... mà chưa ra nổi; nếu 1-2 tiêu chí thì được chứ 50 tiêu chí thì chưa nghĩ ra cách. Và chưa dám nghĩ tới VBA vì trước giờ chưa từng sử dụng qua.
- Danh sách tôi có 251 nhân viên, có 51 tiêu chí (51 tiêu đề, tiếc là có 2-3 tiêu đề phải Merge 2-3 cột lại :( , ví dụ tiêu chí Những thời điểm tái ký hợp đồng lao động, tiêu chí Họ tên các con,... ; có những dữ liệu tôi thực sự không biết làm cách nào tổ chức cho toàn bộ đều nằm riêng 1 cell nhằm phục vụ tốt cho công tác thống kê hoặc lập hàm).
- Tôi có đính kèm file thực tế tôi đang làm việc luôn theo đây. Nhờ các anh chị em GPE giúp! Cám ơn ạ.

ps: và tôi nghĩ ra khi nhập họ tên với ô thông tin chỉ cần mình gõ "Bửu" Droplist Họ tên sẽ chỉ hiện ra những người tên Bửu, tương tự, ở Droplist Thông tin tra cứu mình chỉ cần gõ "CMND" thì mũi tên chỉ xổ xuống các tiêu chí Số CMND, Ngày cấp CMND và Nơi cấp CMND. Nếu vậy thì việc tra cứu rất nhanh, tiết kiệm được nhiều thời gian hơn là phải dùng chức năng Find có sẵn của Excel.

1589601508757.png
 

File đính kèm

Lần chỉnh sửa cuối:
- Như trong hình tôi up bên dưới. Tôi đã tạo ra 2 Droplist Họ tên và Thông tin tra cứu từ chức năng Data Validation. Việc còn lại là cài công thức dò tìm làm sao để cho ra ô Kết quả. Tôi nghĩ mãi về If, Vlookup, Index, Match,... mà chưa ra nổi; nếu 1-2 tiêu chí thì được chứ 50 tiêu chí thì chưa nghĩ ra cách. Và chưa dám nghĩ tới VBA vì trước giờ chưa từng sử dụng qua.
- Danh sách tôi có 251 nhân viên, có 51 tiêu chí (51 tiêu đề, tiếc là có 2-3 tiêu đề phải Merge 2-3 cột lại :( , ví dụ tiêu chí Những thời điểm tái ký hợp đồng lao động, tiêu chí Họ tên các con,... ; có những dữ liệu tôi thực sự không biết làm cách nào tổ chức cho toàn bộ đều nằm riêng 1 cell nhằm phục vụ tốt cho công tác thống kê hoặc lập hàm).
- Tôi có đính kèm file thực tế tôi đang làm việc luôn theo đây. Nhờ các anh chị em GPE giúp! Cám ơn ạ.

ps: và tôi nghĩ ra khi nhập họ tên với ô thông tin chỉ cần mình gõ "Bửu" Droplist Họ tên sẽ chỉ hiện ra những người tên Bửu, tương tự, ở Droplist Thông tin tra cứu mình chỉ cần gõ "CMND" thì mũi tên chỉ xổ xuống các tiêu chí Số CMND, Ngày cấp CMND và Nơi cấp CMND. Nếu vậy thì việc tra cứu rất nhanh, tiết kiệm được nhiều thời gian hơn là phải dùng chức năng Find có sẵn của Excel.

View attachment 237453
Em đọc cũng chưa hiểu ý anh lắm. Anh có thể nói rõ được không?
 
- Như trong hình tôi up bên dưới. Tôi đã tạo ra 2 Droplist Họ tên và Thông tin tra cứu từ chức năng Data Validation. Việc còn lại là cài công thức dò tìm làm sao để cho ra ô Kết quả. Tôi nghĩ mãi về If, Vlookup, Index, Match,... mà chưa ra nổi; nếu 1-2 tiêu chí thì được chứ 50 tiêu chí thì chưa nghĩ ra cách. Và chưa dám nghĩ tới VBA vì trước giờ chưa từng sử dụng qua.
- Danh sách tôi có 251 nhân viên, có 51 tiêu chí (51 tiêu đề, tiếc là có 2-3 tiêu đề phải Merge 2-3 cột lại :( , ví dụ tiêu chí Những thời điểm tái ký hợp đồng lao động, tiêu chí Họ tên các con,... ; có những dữ liệu tôi thực sự không biết làm cách nào tổ chức cho toàn bộ đều nằm riêng 1 cell nhằm phục vụ tốt cho công tác thống kê hoặc lập hàm).
- Tôi có đính kèm file thực tế tôi đang làm việc luôn theo đây. Nhờ các anh chị em GPE giúp! Cám ơn ạ.

ps: và tôi nghĩ ra khi nhập họ tên với ô thông tin chỉ cần mình gõ "Bửu" Droplist Họ tên sẽ chỉ hiện ra những người tên Bửu, tương tự, ở Droplist Thông tin tra cứu mình chỉ cần gõ "CMND" thì mũi tên chỉ xổ xuống các tiêu chí Số CMND, Ngày cấp CMND và Nơi cấp CMND. Nếu vậy thì việc tra cứu rất nhanh, tiết kiệm được nhiều thời gian hơn là phải dùng chức năng Find có sẵn của Excel.

View attachment 237453
Bạn xem thử.
 

File đính kèm

Lần chỉnh sửa cuối:
Trước tiên cám ơn bạn rất nhiều.
Ô kết quả bạn đã lập hàm đáp ứng đúng như mình mong muốn. Trước đó mình toát mồ hôi hột với vlookup, hlookup và phải tạo 1 sheet phụ để quy ước số thứ tự. Trong khi bạn dùng Index và Match giải quyết cái 1. <3
Bạn cài có 2 ô công thức mà làm tôi phải google 1 buổi trời để tìm hiểu cấu trúc và ý nghĩa các hàm: iferror, index, match, offset, subtotal. Nhưng quan trọng hơn là ý tưởng và vận dụng hàm vào nhu cầu của mỗi công việc. Thật tài tình !
Tại sao bạn nghĩ đến dùng đoạn công thức này: =OFFSET(B12;SUBTOTAL(5;A13:A263);)
Tại sao phải là Subtotal min?

Hình như bạn mới nhá hàng thôi đúng không? Vẫn còn làm tốt hơn nữa đúng không?
Phần nhập thông tin cần tìm thì:
+ ô Họ và tên đã giải quyết được 98%, vì nếu Cột họ tên mình lọc được trên 1 người thì chỉ hiện người đầu tiên (do offset STT min). Lúc này mình phải copy họ tên chính xác vào ô nhập liệu, hoặc lọc chính xác họ tên chỉ 1 người.
+ ô Thông tin tra cứu: cấu trúc hình thành hơi khác với ô Họ và tên nên bạn chưa xử lý đúng ko? Làm sao để khi mình nhập "CMND" thì mũi tên chỉ xổ xuống các tiêu chí Số CMND, Ngày cấp CMND và Nơi cấp CMND?

@huonglien1901 : bạn Hoàng Tuấn giúp mình rồi nè. :)
 
Lần chỉnh sửa cuối:
Bạn nên tạo cột phụ để chuyển sang tiếng Việt không dấu, tra cứu nhanh hơn và giảm sai sót do bỏ dấu tự động sai vị trí (VD: Hoá, hóa..), sai bảng mã Unicode...)

Bài đã được tự động gộp:

Làm sao để khi mình nhập "CMND" thì mũi tên chỉ xổ xuống các tiêu chí Số CMND, Ngày cấp CMND và Nơi cấp CMND?
-> https://www.xelplus.com/searchable-drop-down-list/
 
Lần chỉnh sửa cuối:
Bạn nên tạo cột phụ để chuyển sang tiếng Việt không dấu, tra cứu nhanh hơn và giảm sai sót do bỏ dấu tự động sai vị trí (VD: Hoá, hóa..), sai bảng mã Unicode...)

Bài đã được tự động gộp:

Làm sao để khi mình nhập "CMND" thì mũi tên chỉ xổ xuống các tiêu chí Số CMND, Ngày cấp CMND và Nơi cấp CMND?
-> https://www.xelplus.com/searchable-drop-down-list/

Cám ơn bạn nhiều.
Tuy nhiên, link hướng dẫn loại bỏ dấu Tiếng Việt bạn gửi là phải dụng đến VBA á. Mình chưa biết VBA luôn. :( Nếu mình có làm việc này mình sẽ dùng công cụ chuyển đổi của Unikey là được.
Còn link hướng dẫn (100% English,ok fine) về searchable-drop-down-list bạn gửi thì mình đọc đến gần cuối mình mới biết được là áp dụng cho Office 365 á. éc
anyway, thax a lot.
 
Trước tiên cám ơn bạn rất nhiều.
Ô kết quả bạn đã lập hàm đáp ứng đúng như mình mong muốn. Trước đó mình toát mồ hôi hột với vlookup, hlookup và phải tạo 1 sheet phụ để quy ước số thứ tự. Trong khi bạn dùng Index và Match giải quyết cái 1. <3
Bạn cài có 2 ô công thức mà làm tôi phải google 1 buổi trời để tìm hiểu cấu trúc và ý nghĩa các hàm: iferror, index, match, offset, subtotal. Nhưng quan trọng hơn là ý tưởng và vận dụng hàm vào nhu cầu của mỗi công việc. Thật tài tình !
Tại sao bạn nghĩ đến dùng đoạn công thức này: =OFFSET(B12;SUBTOTAL(5;A13:A263);)
Tại sao phải là Subtotal min?

Hình như bạn mới nhá hàng thôi đúng không? Vẫn còn làm tốt hơn nữa đúng không?
Phần nhập thông tin cần tìm thì:
+ ô Họ và tên đã giải quyết được 98%, vì nếu Cột họ tên mình lọc được trên 1 người thì chỉ hiện người đầu tiên (do offset STT min). Lúc này mình phải copy họ tên chính xác vào ô nhập liệu, hoặc lọc chính xác họ tên chỉ 1 người.
+ ô Thông tin tra cứu: cấu trúc hình thành hơi khác với ô Họ và tên nên bạn chưa xử lý đúng ko? Làm sao để khi mình nhập "CMND" thì mũi tên chỉ xổ xuống các tiêu chí Số CMND, Ngày cấp CMND và Nơi cấp CMND?

@huonglien1901 : bạn Hoàng Tuấn giúp mình rồi nè. :)
Bạn xem thêm phần Thông tin tra cứu nhé, đáp ứng tiêu chí: "Làm sao để khi mình nhập "CMND" thì mũi tên chỉ xổ xuống các tiêu chí Số CMND, Ngày cấp CMND và Nơi cấp CMND?"
 

File đính kèm

Lần chỉnh sửa cuối:
Bạn xem thêm phần Thông tin tra cứu nhé, đáp ứng tiêu chí: "Làm sao để khi mình nhập "CMND" thì mũi tên chỉ xổ xuống các tiêu chí Số CMND, Ngày cấp CMND và Nơi cấp CMND?"
Bạn làm sao hay quá vậy? Chỉ tôi với :D
Tôi thấy bạn tổ chức lại dữ liệu nguồn đúng không?
Và tôi vào Name Manager xem thử thì thấy bạn có đặt 2 cái Name mà tôi không biết để làm gì luôn. hiii

ps: vẫn ô Thông tin tra cứu, nếu gõ vào những ký tự đầu có dữ liệu trùng khớp thì nó sẽ list ra, còn nếu những ký tự đầu không trùng thì sẽ không list gì hết. Ví dụ gõ "trình độ" nó sẽ list ra các trường "trình độ học vấn", "trình độ chuyên môn", "trình độ ngoại ngữ",... nhưng nếu gõ "ngoại ngữ" nó sẽ không list ra "trình độ ngoại ngữ" vì "ngoại ngữ" không phải là những ký tự đầu tiên trong chuỗi nó xét trùng khớp. :)

1589852450009.png
 
Bạn làm sao hay quá vậy? Chỉ tôi với :D
Tôi thấy bạn tổ chức lại dữ liệu nguồn đúng không?
Và tôi vào Name Manager xem thử thì thấy bạn có đặt 2 cái Name mà tôi không biết để làm gì luôn. hiii

ps: vẫn ô Thông tin tra cứu, nếu gõ vào những ký tự đầu có dữ liệu trùng khớp thì nó sẽ list ra, còn nếu những ký tự đầu không trùng thì sẽ không list gì hết. Ví dụ gõ "trình độ" nó sẽ list ra các trường "trình độ học vấn", "trình độ chuyên môn", "trình độ ngoại ngữ",... nhưng nếu gõ "ngoại ngữ" nó sẽ không list ra "trình độ ngoại ngữ" vì "ngoại ngữ" không phải là những ký tự đầu tiên trong chuỗi nó xét trùng khớp. :)

View attachment 237565
Bạn tìm hiểu hai công thức của hai name là hình dung được bạn ạ.
 
Đọc quá đọc, mà mơ hồ vẫn cứ mơ hồ, hiiiiiii
Xoắn cái não quá bạn :D
Tôi quáng với mớ: tên sheet, tên table, tên động, source data...rồi mấy hàm offset (nhứt là thằng này nè, hiểu ý nghĩa hàm nhưng ko biết vận dụng nó), index, match, counta, countif,... :(
Ko lẽ tôi già mất rồi.

1589857617230.png
 
Nhìn Name thế kia thì chỉ gõ các từ ở đầu text thì mới có thể hiện gợi ý. Còn các từ ở giữa text thì không hiện được gợi ý cho Data Validiton.
 
Nhìn Name thế kia thì chỉ gõ các từ ở đầu text thì mới có thể hiện gợi ý. Còn các từ ở giữa text thì không hiện được gợi ý cho Data Validiton.
Đúng rồi mình có nói bên trên á:
"ps: vẫn ô Thông tin tra cứu, nếu gõ vào những ký tự đầu có dữ liệu trùng khớp thì nó sẽ list ra, còn nếu những ký tự đầu không trùng thì sẽ không list gì hết. Ví dụ gõ "trình độ" nó sẽ list ra các trường "trình độ học vấn", "trình độ chuyên môn", "trình độ ngoại ngữ",... nhưng nếu gõ "ngoại ngữ" nó sẽ không list ra "trình độ ngoại ngữ" vì "ngoại ngữ" không phải là những ký tự đầu tiên trong chuỗi nó xét trùng khớp. "
bác @Hoàng Tuấn 868 chưa xử lý xong.

Mà tôi còn chưa hiểu cách làm ra sao nữa.
 
Đúng rồi mình có nói bên trên á:
"ps: vẫn ô Thông tin tra cứu, nếu gõ vào những ký tự đầu có dữ liệu trùng khớp thì nó sẽ list ra, còn nếu những ký tự đầu không trùng thì sẽ không list gì hết. Ví dụ gõ "trình độ" nó sẽ list ra các trường "trình độ học vấn", "trình độ chuyên môn", "trình độ ngoại ngữ",... nhưng nếu gõ "ngoại ngữ" nó sẽ không list ra "trình độ ngoại ngữ" vì "ngoại ngữ" không phải là những ký tự đầu tiên trong chuỗi nó xét trùng khớp. "
bác @Hoàng Tuấn 868 chưa xử lý xong.

Mà tôi còn chưa hiểu cách làm ra sao nữa.
1589877892577.png
Bạn sửa lại đoạn công thức như trên thì sẽ gõ được 1 từ ở giữa đoạn text nhé.
DSCHON =OFFSET(Sheet3!$A$1,MATCH("*"&'DS CB CNV HIEN TAI'!B9&"*",DSLD,0)-1,0,COUNTIF(DSLD,"*"&'DS CB CNV HIEN TAI'!B9&"*"),1)
Thiết nghĩ với Name như thế kia thì bạn làm thêm cho ô B9 cái data validition như ô C9. Sẽ tiện hơn kích ô B12 rồi filter
 
Lần chỉnh sửa cuối:
View attachment 237606
Bạn sửa lại đoạn công thức như trên thì sẽ gõ được 1 từ ở giữa đoạn text nhé.
DSCHON =OFFSET(Sheet3!$A$1,MATCH("*"&'DS CB CNV HIEN TAI'!B9&"*",DSLD,0)-1,0,COUNTIF(DSLD,"*"&'DS CB CNV HIEN TAI'!B9&"*"),1)
Thiết nghĩ với Name như thế kia thì bạn làm thêm cho ô B9 cái data validition như ô C9. Sẽ tiện hơn kích ô B12 rồi filter
Cảm ơn bạn đã tư vấn, lúc đầu mình cũng định làm như ý bạn, nhưng mình thấy bạn tiniluu123 cũng chịu khó tìm hiểu nên mình mới làm hai dạng như trên. bây giờ nếu bạn tiniluu123 cũng muốn như vậy thì mình sẽ điều chỉnh cho hai bên giống như tư vấn của bạn.
Thân.
 
Đọc quá đọc, mà mơ hồ vẫn cứ mơ hồ, hiiiiiii
Xoắn cái não quá bạn :D
Tôi quáng với mớ: tên sheet, tên table, tên động, source data...rồi mấy hàm offset (nhứt là thằng này nè, hiểu ý nghĩa hàm nhưng ko biết vận dụng nó), index, match, counta, countif,... :(
Ko lẽ tôi già mất rồi.

View attachment 237566
Anh cứ nghiền ngẫm nó. Nó sẽ nghiệm ra từ từ.
Offset( địa chỉ gốc. Dòng. Cột. Độ cao dòng. Độ cao cộ2t).
Hàm offset(counta )))).của bạn @Hoàng Tuấn 868 nên sửa lại cột A nên lấy giá trị vừa phải thôi. Lấy triệu dòng hơi nặng. Nên tầm lấy 1000. 10000 thôi. Mình chỉ góp ý vậy thôi.
 
Lần chỉnh sửa cuối:
Anh cứ nghiền ngẫm nó. Nó sẽ nghiệm ra từ từ.
Offset( địa chỉ gốc. Dòng. Cột. Độ cao dòng. Độ cao cột).
Hàm counta của bạn @Hoàng Tuấn 868 nên sửa lại cột A nên lấy giá trị vừa phải thôi. Lấy triệu dòng hơi nặng. Nên tầm lấy 1000. 10000 thôi. Mình chỉ góp ý vậy thôi.
Cảm ơn bạn nhiều, lúc đó mình không để ý đấy.
 
Mình khuyên bạn 1 điều chắc bạn sẽ buồn: Nên bỏ CSDL này đi & xây dựng lại cho chuẩn; Lí do ư, nhiều lắm:
(1) Thiếu 1 trường (cột) quan trọng là [Mã NV]; Nếu không có trường này thì CSDL dễ thành đống rác lắm!
Mình xin giới thiệu bộ mã nhân viên nên là như sau:
Mã NVHọ và tên
BNH00BÙI NGỌC HÙNG
BPD00BÙI TRƯƠNG DƯƠNG PHƯỚC DUY
FTD00ĐẶNG TẤN DUẨN
DHF00DƯƠNG HẢI ĐĂNG
LJH00LÊ HOÀI
NHT00NGUYỄN HOÀNG TÂN
NHT01NGUYỄN HOÀNG THANH
NHT02NGUYỄN HOÀNG TUẤN
NHF00NGUYỄN HỒNG ĐĂNG
NTT00NGUYỄN THANH TIẾN
NTT01NGUYỄN THANH TIẾN
NVD00NGUYỄN VĂN DANH
NVF00NGUYỄN VĂN ĐÀNH

(2) Thừa thì nhiều trường như
Họ và têntháng sinh nhậtSố tuổiSố tháng, năm tuổi
Những trường này trong CSDL thì dư & làm chậm các chu trình tìm kiếm, tập hợp,. . . trong quá trình xử lý CSDL
Những trường này khi cần thể hiện trên các báo cáo ta nhờ Excel tính toán cho ta

(3) Các trường [Ngày tháng năm] bạn lại nhập chuỗi; Điều này không thích hợp trong Excel & không thể tận dụng chức năng mạnh mẽ về công thức tính toán của nó đã được xây dựng & tích hợp sẵn cho bạn & tôi

(4) Ai tiếp tục giúp bạn xử lý trong CSDL của bạn như vậy chỉ là hại bạn về lâu về dài mà thôi!

(*) 1 điếu nhỏ nữa trong CSDL là bao giờ người sinh ra đã có giới tính, nên trường(cột) giới tính nên dời lên trước nhiều trường khác như {Ngày tuyển dụng] hay [SĐT],. . .
 
Web KT

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

Back
Top Bottom