Mục lục
Hôm nay chúng tôi sẽ trình bày cách sử dụng công thức VLOOKUP với nhiều trang tính trong Excel. Trên thực tế, một trong những hàm quan trọng nhất và được sử dụng rộng rãi nhất của Excel là hàm VLOOKUP . Hơn nữa, chúng ta có thể sử dụng hàm VBA VLOOKUP để tìm kiếm dữ liệu cụ thể trong một trang tính hoặc trong một dải trang tính.
Ngoài ra, hôm nay chúng tôi sẽ chỉ ra cách chúng tôi có thể sử dụng Công thức VLOOKUP để tìm kiếm một số dữ liệu cụ thể trong nhiều trang tính trong Excel.
Tải xuống Sách bài tập thực hành
Bạn có thể tải xuống sách bài tập thực hành từ đây:
Công thức VLOOKUP có nhiều trang tính.xlsx Mock Test Marks.xlsxGiới thiệu về hàm VLOOKUP của Excel
=VLOOKUP(lookup_value,table_array,col_index_num,[range_lookup])
- Hàm này lấy một dải ô có tên là table_array làm đối số.
- Sau đó, tìm kiếm một giá trị cụ thể được gọi là lookup_value trong cột đầu tiên của table_array .
- Hơn nữa , tìm kiếm đối sánh gần đúng nếu đối số [range_lookup] là TRUE , nếu không thì tìm kiếm đối sánh chính xác. Ở đây, giá trị mặc định là TRUE .
- Nếu nó tìm thấy bất kỳ kết quả khớp nào của lookup_value trong cột đầu tiên của table_array , di chuyển vài bước sang phải một cột cụ thể (col_index_number).
Sau đó, trả về giá trị từ cột đóbị thiếu trong các trang tính đã đề cập.
Hạn chế của hàm VLOOKUP và một số giải pháp thay thế trong Excel
- Tại đây, bạn không thể sử dụng VLOOKUP khi giá trị lookup_value không có trong cột đầu tiên của bảng. Ví dụ: trong ví dụ trước, bạn không thể sử dụng hàm VLOOKUP để biết tên của thí sinh đạt 90 trong bài kiểm tra viết.
- Tuy nhiên, bạn có thể sử dụng các hàm IF , IFS , INDEX MATCH , XLOOKUP hoặc FILTER của Excel để giải this (Tại đây, bạn có thể truy cập bài viết này ).
- Hơn nữa, VLOOKUP chỉ trả về giá trị first nếu có nhiều hơn một giá trị khớp với lookup_value . Trong những trường hợp này, bạn có thể sử dụng hàm FILTER để lấy tất cả các giá trị (Tại đây, bạn có thể truy cập bài viết này ).
Cách Áp dụng VLOOKUP Công thức trong Excel với nhiều sổ làm việc
Trong phần này, chúng ta sẽ thảo luận cách áp dụng công thức VLOOKUP trong Excel với nhiều sổ làm việc. Bây giờ, hãy tạo sổ làm việc sau có tên Mock Test Marks . Ngoài ra, trong sổ làm việc đó cũng có ba trang tính. Đó là Tuần 1, Tuần 2 và Tuần 3 .
Tại thời điểm này, chúng tôi muốn so sánh sơ bộ và điểm viết cuối cùng nhận được bởi các ứng cử viên. Lúc đầu, chúng tôi tìm thấy các điểm viết cuối cùng. Ở đây, bạn có thể tìm thấy điều đó bằng cách làm theo bất kỳcác phương pháp trước đó. Bây giờ, chúng ta sẽ trích xuất các điểm đã viết sơ bộ từ một sổ làm việc khác.
- Vì vậy, hãy viết công thức sau vào ô D5 .
=IFERROR(VLOOKUP(B5,'[Mock Test Marks.xlsx]Week 1'!$B$5:$D$10,2,FALSE),IFERROR(VLOOKUP(B5, '[Mock Test Marks.xlsx]Week 2'!$B$5:$D$10,2,FALSE),IFERROR(VLOOKUP(B5,'[Mock Test Marks.xlsx]Week 3'!$B$5:$D$10,2,FALSE),"Absent")))
Ở đây, khi sử dụng công thức này, bạn phải mở cả hai sổ làm việc. Nếu không, bạn phải sử dụng đường dẫn/vị trí điền thay vì chỉ sử dụng tên tệp.
- Sau đó, nhấn ENTER .
- Sau đó, kéo biểu tượng Fill Handle xuống.
Cuối cùng, bạn sẽ thấy cả hai biểu tượng chấm điểm cuối cùng và sơ bộ cho tất cả các thí sinh.
Phần Thực hành
Bây giờ, bạn có thể tự mình thực hành phương pháp được giải thích.
Kết luận
Khi sử dụng các phương pháp này, bạn có thể sử dụng hàm VLOOKUP của Excel dưới dạng công thức để trích xuất dữ liệu từ nhiều trang tính trong sổ làm việc. Vì vậy, bạn có câu hỏi nào khác không? Hãy hỏi chúng tôi.
ô.Ngoài ra, chúng tôi đã đính kèm một ví dụ về hàm VLOOKUP này. Bây giờ, hãy nhìn vào hình sau.
Phân tích công thức
Đây, công thức VLOOKUP(G8,B4:D15,3,FALSE) đã tìm kiếm giá trị của ô G8 “ Angela ” trong cột đầu tiên của bảng : B4:D15 .
Sau khi tìm thấy một cột, nó di chuyển ngay đến cột thứ 3 (Vì col_index_number là 3 .)
Sau đó trả về giá trị từ đó, là 322 .
5 cách sử dụng công thức VLOOKUP trong Excel với nhiều trang tính
Ở đây, chúng tôi có một sổ làm việc với các điểm trong bài kiểm tra viết và kiểm tra viva của một số thí sinh trong ba tuần ở các trang tính khác nhau. Ngoài ra, tên của bảng tính đầu tiên là Tuần 1 .
Sau đó, tên của bảng tính Thứ 2 là Tuần 2 .
Cuối cùng, tên của bảng tính thứ 3 có chứa điểm của Nhóm Marco là Tuần 3 .
Bây giờ, mục tiêu của chúng ta là lấy điểm của các em từ bảng tính ba sang bảng tính mới bằng cách sử dụng Hàm VLOOKUP của Excel.
1. Công thức VLOOKUP để Tìm kiếm Riêng biệt trên Từng Trang tính
Ở đây, chúng ta có một trang tính mới có tên là “Chỉ VLOOKUP” với tên của tất cả các ứng cử viên được sắp xếp theo thứ tự bảng chữ cái (A đến Z) . Bây giờ, chúng ta sẽ sử dụng công thức VLOOKUP để tìm kiếm từ nhiều trang tính trongExcel.
Trước hết, chúng tôi sẽ tìm kiếm qua ba trang tính riêng biệt.
Ở đây, chúng tôi sẽ tìm kiếm lookup_value từ một trang tính sang một dải ô của một trang tính khác.
Cú pháp của công thức sẽ là:
=VLOOKUP(giá trị_tra cứu,'Tên_trang tính'! table_array, col_index_number,FALSE)
- Để tìm kiếm Điểm trong Bài viết của Thí sinh của Tuần 1 , hãy nhập công thức này vào ô C5 của trang tính mới:
=VLOOKUP(B5,'Week 1'!$B$5:$D$10,2,FALSE)
- Sau đó, nhấn ENTER .
Điều này đang hiển thị lỗi #N/A! do giá trị của ô B5 trong trang tính “Chỉ VLOOKUP” , Alex Hales , không có trong phạm vi B5:D10 của trang tính “Tuần 1 “ .
- Sau đó, kéo biểu tượng Fill Handle .
Kết quả là, chúng tôi chỉ thấy điểm của những thí sinh xuất hiện trong Tuần 1 được hiển thị, những ứng viên còn lại đang hiển thị lỗi.
- Sim Nói cách khác, để tìm dấu viva, hãy viết công thức sau vào ô D5 .
=VLOOKUP(B5,'Week 1'!$B$5:$D$10,3,FALSE)
- Sau đó, nhấn ENTER .
- Sau đó, kéo biểu tượng Fill Handle để áp dụng công thức trong các ô còn lại.
Vì vậy, chúng tôi thấy điểm của chỉ những ứng viên xuất hiện trong Tuần 1 mới được hiển thị, phần còn lại đang hiển thị lỗi.
Hơn nữa,chúng tôi cũng có thể thực hiện một nhiệm vụ tương tự cho Tuần 2 và Tuần 3 , nhưng điều đó sẽ không đáp ứng nhu cầu của chúng tôi. Do đó, chúng tôi phải tìm kiếm một cách tiếp cận tốt hơn.
Lưu ý: Ở đây, chúng tôi đã sử dụng tham chiếu ô tương đối cho lookup_value (B5) , nhưng tham chiếu ô tuyệt đối cho table_array ($B$5:$D$10) . Bởi vì chúng tôi muốn lookup_value tăng dần trong khi kéo biểu tượng Fill Handle , nhưng table_array không đổi.
Đọc thêm: Tại sao VLOOKUP trả về #N/A khi tồn tại kết quả khớp? (5 Nguyên nhân & Giải pháp)
2. Tìm kiếm trên nhiều Sheet với Hàm IFERROR trong Excel
Lần này, trước tiên chúng ta sẽ tìm kiếm ứng viên trong sheet đầu tiên ( Tuần 1 ).
Sau đó, nếu chúng tôi không tìm thấy anh ấy/cô ấy trong bảng tính đầu tiên, chúng tôi sẽ tìm kiếm trong bảng tính thứ hai ( Tuần 2 ).
Và nếu chúng tôi vẫn không tìm thấy anh ấy/cô ấy, chúng tôi sẽ tìm kiếm trong bảng tính thứ ba ( Tuần 3 ).
Nếu vẫn không tìm thấy anh ấy/cô ấy, chúng tôi sẽ quyết định rằng anh ấy/cô ấy vắng mặt trong kỳ thi.
Trong phần trước chúng ta đã thấy, VLOOKUP trả về N/A! Lỗi nếu nó không tìm thấy bất kỳ giá trị khớp nào với lookup_value trong table_array .
Vì vậy, lần này chúng ta sẽ lồng các hàm VLOOKUP trong hàm IFERROR để xử lý lỗi.
Do đó, cú pháp của công thức sẽlà:
=IFERROR(VLOOKUP(lookup_value,”Sheet1_Name”!table_array,col_index_number,FALSE),IFERROR(VLOOKUP(lookup_value,”Sheet2_Name”!table_array,col_index_number,FALSE),IFERROR (VLOOKUP(lookup_value,”Sheet3_Name”!table_array,col_index_number,FALSE),”Vắng mặt”)))
- Bây giờ, hãy nhập công thức sau vào ô C5 của “Vlookup & IFERROR” sheet.
=IFERROR(VLOOKUP(B5,'Week 1'!$B$5:$D$10,2,FALSE),IFERROR(VLOOKUP(B5, 'Week 2'!$B$5:$D$10,2,FALSE),IFERROR(VLOOKUP(B5,'Week 3'!$B$5:$D$10,2,FALSE),"Absent")))
- Sau đó, nhấn ENTER .
Kết quả là bạn sẽ thấy các dấu viết của Alex Hales .
Sau đó, chúng ta sẽ tìm thấy các dấu viva của Alex Hales.
- Vì vậy, hãy viết công thức sau vào ô D5 .
=IFERROR(VLOOKUP(B5,'Week 1'!$B$5:$D$10,3,FALSE),IFERROR(VLOOKUP(B5, 'Week 2'!$B$5:$D$10,3,FALSE),IFERROR(VLOOKUP(B5,'Week 3'!$B$5:$D$10,3,FALSE),"Absent")))
- Sau đó, nhấn ENTER .
- Sau đó, chọn cả hai ô C5 và D5 .
- Do đó, hãy kéo biểu tượng Fill Handle đến Tự động điền dữ liệu tương ứng trong các ô còn lại C6:D24 .
Cuối cùng, bạn sẽ thấy cả điểm viết và điểm trực tiếp cho tất cả các thí sinh.
Đọc thêm: Ví dụ VLOOKUP giữa hai trang tính trong Excel
Đọc tương tự
- VLOOKUP không hoạt động (8 lý do & giải pháp)
- Excel LOOKUP so với VLOOKUP: Với 3 ví dụ
- LOOKUP là gì Mảng bảng trong VLOOKUP? (Được giải thích bằng các ví dụ)
- Cách sử dụng VLOOKUP lồng nhau trong Excel (3 tiêu chí)
- Sử dụng VLOOKUP với nhiềuTiêu chí trong Excel (6 Phương pháp + Lựa chọn thay thế)
3. Sử dụng Công thức Kết hợp để Tìm kiếm trên Nhiều Trang tính trong Excel
Thực ra, IFERROR lồng nhau và công thức VLOOKUP mà chúng tôi đã sử dụng trước đó rất hữu ích nhưng vẫn hơi phức tạp để sử dụng. Về cơ bản, có nhiều khả năng bị nhầm lẫn và tạo ra lỗi nếu có nhiều trang tính.
Vì vậy, chúng tôi sẽ tạo một công thức khác bằng cách sử dụng INDIRECT , INDEX<2 Các hàm>, MATCH và COUNTIF thậm chí trông phức tạp hơn nhưng tương đối dễ áp dụng hơn khi có nhiều trang tính.
- Đầu tiên tất cả, hãy tạo một mảng ngang với tên của tất cả các trang tính. Ở đây, chúng ta đã tạo một trong các ô F5:H5 .
- Sau đó, chèn công thức sau vào Ô C5 .
=IFERROR(VLOOKUP(B5,INDIRECT("'"&INDEX($F$5:$H$5,1,MATCH(TRUE,COUNTIF(INDIRECT("'"&$F$5:$H$5&"'!B5:B10"),B5)>0,0))&"'!$B$5:$D$10"),2,FALSE),"Absent")
- Sau đó, nhấn ENTER .
Phân tích công thức
- Đầu tiên, COUNTIF(INDIRECT(“' ”&$F$5:$H$5&”'!B5:B10”),B5) trả về số lần giá trị trong ô B5 xuất hiện trong phạm vi ' Tuần 1′!B5:B10 , 'Tuần 2'!B5:B10 và 'Tuần 3'!B5:B10 tương ứng. [Đây $F$5:$H$5 là tên của các trang tính. Vì vậy, công thức INDIRECT nhận được 'Sheet_Name'!B5:B10 .]
- Đầu ra: {0,0,1} .
- Thứ hai, MATCH(TRUE,{0,0,1}>0,0) trả về bảng tính nàocó giá trị trong B5 .
- Đầu ra: 3 .
- Ở đây nó trả về 3 là giá trị trong B5 ( Alex Hales ) có trong trang tính số 3 ( Tuần 3 ).
- Thứ ba, INDEX( $F$5:$H$5,1,3) trả về tên của trang tính chứa giá trị trong ô B5 .
- Đầu ra: “Tuần 3” .
- Thứ tư, INDIRECT(“'”&”Week 3″&” '!$B$4:$D$9”) trả về tổng phạm vi ô của trang tính có giá trị trong B5 .
- Đầu ra: {“Nathan Mills”,72,59;”Ruth Williamson”,53,55;”Alex Hales”,67,70;”Matthew Shepherd”,76,45;”Christina Paul”,69,75;”Ricardo Moyes”,57,61}.
- Cuối cùng, VLOOKUP(B5,{“Nathan Mills”,72,59 ;”Ruth Williamson”,53,55;”Alex Hales”,67,70;”Matthew Shepherd”,76,45;”Christina Paul”,69,75;”Ricardo Moyes”,57,61},2,SAI ) trả về cột thứ 2 của hàng từ phạm vi đó mà giá trị trong ô B5 khớp với nhau.
- Đầu ra: 67 .
- Vì vậy, đây là điểm thi viết mà chúng ta đang tìm kiếm.
- Và trong trường hợp không tìm thấy tên trong bất kỳ trang tính nào, nó sẽ trả về “Vắng mặt” vì chúng tôi đã lồng tên đó trong hàm IFERROR .
Tại đây, bạn có thể sử dụng một công thức tương tự để tìm điểm Viva của các ứng cử viên.
- Vì vậy, hãy thay đổi col_index_number từ 2 thành 3 và viếtcông thức.
=IFERROR(VLOOKUP(B5,INDIRECT("'"&INDEX($F$5:$H$5,1,MATCH(TRUE,COUNTIF(INDIRECT("'"&$F$5:$H$5&"'!B5:B10"),B5)>0,0))&"'!$B$5:$D$10"),3,FALSE),"Absent")
- Sau đó, nhấn ENTER để nhận kết quả.
- Sau đó, kéo biểu tượng Fill Handle .
Cuối cùng, chúng ta đã có cả văn bản và viva điểm của tất cả các ứng cử viên. Ngoài ra, tên của những người không được tìm thấy đã được đánh dấu là vắng mặt.
Đọc thêm: INDEX MATCH vs Hàm VLOOKUP (9 ví dụ)
4. Công thức VLOOKUP với Số chỉ mục cột động
Cho đến bây giờ, để trích xuất điểm trong bài kiểm tra viết, chúng tôi đang sử dụng col_index_num là 2 . Và đối với các dấu viva, 3 .
Thực tế, chúng tôi đang chèn các công thức một cách riêng biệt vào cả hai cột.
Cuối cùng, khi chúng tôi có nhiều cột, nó sẽ khá rắc rối khi chèn công thức vào tất cả các cột một cách riêng biệt.
Vì vậy, lần này chúng ta sẽ tạo một công thức để chúng ta có thể chèn công thức vào cột đầu tiên và kéo nó vào tất cả các cột thông qua biểu tượng Fill Handle .
Đơn giản. Thay vì chèn một số thuần túy dưới dạng col_index_num , hãy chèn COLUMNS($C$1:D1) nếu công thức nằm trong cột C ( Dành cho Người viết Marks ).
Sau đó, nó sẽ trả về 2 .
Sau đó, nếu chúng ta kéo nó vào cột E , nó sẽ trở thành COLUMNS($C$1:E1) và trả về 3 . Và cứ thế.
- Vì vậy, bây giờ chúng ta thay đổi công thức trong phần trước thành:
=IFERROR(VLOOKUP($B5,INDIRECT("'"&INDEX($F$5:$H$5,1,MATCH(TRUE,COUNTIF(INDIRECT("'"&$F$5:$H$5&"'!B5:B10"),$B5)>0,0))&"'!$B$5:$D$10"),COLUMNS($C$1:D1),FALSE),"Absent")
- Sau đó, nhấn ENTER .
- Sau đó, kéo biểu tượng Fill Handle sang bên phải để lấy Dấu Viva .
- Sau đó, kéo biểu tượng Fill Handle xuống.
Cuối cùng, bạn sẽ thấy cả điểm viết và điểm viva cho tất cả các thí sinh.
Lưu ý: Ở đây, chúng tôi đã thay đổi lookup_value từ B5 đến $B5 , để nó không thay đổi khi kéo sang phải, nhưng thay đổi khi kéo xuống.
Đọc thêm: Excel Dynamic VLOOKUP (với 3 công thức)
5. Công thức VLOOKUP với các hàm kết hợp trong Excel
Ở đây, chúng ta sẽ sử dụng một công thức VLOOKUP khác trong Excel có nhiều trang tính bỏ qua hàm IFERROR . Vì vậy, hãy xem các bước dưới đây.
Các bước:
- Đầu tiên, bạn phải chọn một ô mới C5 nơi bạn muốn giữ nguyên các dấu đã viết.
- Thứ hai, bạn nên sử dụng công thức được cung cấp bên dưới trong ô C5 .
=VLOOKUP(B5,INDIRECT("'"&INDEX($F$5:$H$5,MATCH(1,--(COUNTIF(INDIRECT("'"&$F$5:$H$5&"'!$B$5:$D$10"),B5)>0),0))&"'!$B$5:$D$10"),2,FALSE)
- Thứ ba, nhấn ENTER .
- Tương tự, sử dụng công thức sau trong ô D5 để lấy điểm Viva.
=VLOOKUP(B5,INDIRECT("'"&INDEX($F$5:$H$5,MATCH(1,--(COUNTIF(INDIRECT("'"&$F$5:$H$5&"'!$B$5:$D$10"),B5)>0),0))&"'!$B$5:$D$10"),3,FALSE)
- Sau đó, nhấn ENTER .
- Sau đó kéo biểu tượng Fill Handle .
Cuối cùng, bạn sẽ thấy cả điểm viết và điểm viva của tất cả các ứng viên. Ngoài ra, bạn sẽ thấy lỗi #N/A trong đó các tên