Các câu hỏi về Hàm Index và Match

  • Thread starter Thread starter tienbv
  • Ngày gửi Ngày gửi
Liên hệ QC
Sau khi mình xem về bài tập hàm Match của bạn THUNGHI, mình hiểu được hàm Match. Tuy nhiên sao không thấy bạn chỉ giùm luôn cú pháp hàm index và ví dụ qua bài tập như hàm Match. Cảm ơn bạn nhe!

Thì đây;
Hàm INDEX
Tác giả: BNTT
Chức năng: Hàm INDEX trả về một giá trị hay tham chiếu đến một giá trị trong một bảng hoặc một mảng.
Hàm INDEX có hai hình thức là dạng mảng và dạng tham chiếu:

a. Dạng Mảng: INDEX(array,row_num,col_num)

- Array: là một dãy ô hay một hằng mảng.
- Row_num: là số chỉ dòng của giá trị trong mảng cần trả về. Nếu bỏ qua row_num thì buộc phải có col_num.
- Col_num: là số chỉ cột của giá trị trong mảng cần trả về. Nếu bỏ qua col_num thì buộc phải có row_num.

Lưu ý:
  • Nếu mảng chỉ có một dòng hoặc một cột, thì row_num hay column_num tương ứng là tùy chọn.
  • Nếu mảng có nhiều hơn một dòng hoặc nhiều hơn một cột, và chỉ có hoặc là row_num hoặc là column_num được sử dụng, INDEX() sẽ trả về toàn bộ dòng hay cột của mảng.
  • Nếu hai đối số col_num và row_num đều được sử dụng, INDEX() sẽ trả về giá trị của ô là giao điểm của col_num và row_num.
  • Nếu row_num hoặc col_num bằng 0, hàm sẽ trả về mảng các giá trị là toàn bộ cột hoặc toàn bộ dòng tương ứng.
  • Row_num và col_num phải chỉ tới một ô trong mảng, nếu không, INDEX() sẽ báo lỗi #REF!
b. Dạng Tham chiếu: INDEX(reference,row_num,col_num,area_num)

- Reference: là một tham chiếu đến một hoặc nhiều dãy ô liên tiếp.
- Row_num: là số chỉ dòng trong vùng tham chiếu được trả về.
- Col_num: là số chỉ cột trong vùng tham chiếu được trả về.
- Area_num: là số chỉ thứ tự của vùng trong tham chiếu được chọn. Nếu để trống, hàm mặc định chọn vùng 1.

Lưu ý:
  • Nếu row_num hoặc col_num bằng 0, hàm sẽ trả về tham chiếu cho toàn bộ cột hoặc toàn bộ dòng tương ứng.
  • Col_num, row_num và area_num phải chỉ tới một ô bên trong tham chiếu, nếu không, INDEX() sẽ báo lỗi #REF!.
  • Nếu bỏ qua col_num và row_num, INDEX() sẽ trả về một vùng trong tham chiếu, được chỉ định bởi area_num.
  • Kết quả mà hàm INDEX trả về chính là một tham chiếu, là giao điểm của dòng và cột trong vùng tham chiếu được trả về.
=> Ví dụ: File đính kèm
 

File đính kèm

Sau khi mình xem về bài tập hàm Match của bạn THUNGHI, mình hiểu được hàm Match. Tuy nhiên sao không thấy bạn chỉ giùm luôn cú pháp hàm index và ví dụ qua bài tập như hàm Match. Cảm ơn bạn nhe!
Bạn tìm đến bài viết của anh BNTT xem ở dưới mục chữ ký "Tra cứu hàm excel" đấy. Tha hồ mà nghiên cứu các hàm nhé.
 
Em cũng có cùng thắc mắc như trên mà sao không thấy anh chị nào giải đáp cả...**~**!!Mong được sự giúp đỡ..E cảm ơn nhiều!!
[FONT=&quot]
Mã:
F2 =INDEX($E$16:$K$27;MATCH(E2;$E$17:$E$27;0)[B][COLOR=red]+1[/COLOR][/B];MATCH(D2;$F$16:$K$16;0)[B][COLOR=red]+1[/COLOR][/B])
Bạn thắc mắc không hiểu tại sao có +1 chứ gì?
Giá trị hàng ở hàm MATCH đầu tiên trong công thức trên sẽ cho giá trị hàng bằng 1 và hàm MATCH thứ 2 sẽ cho giá trị cột bằng 1.[/FONT]
[FONT=&quot]Thay vào hàm INDEX kết quả sẽ cho giá trị bằng cell E16 (Do vùng tính của hàm INDEX bắt đầu từ cell E16:K27. Từ vùng tính sẽ có tổng cộng 12 hàng và 7 cột).
Nếu Bạn thay công thức trên bằng công thức sau sẽ không có +1 nữa
Mã:
F2 =INDEX($E$16:$K$27;MATCH(E2;[COLOR=red]$E$16[/COLOR]:$E$27;0);MATCH(D2;[COLOR=red]$E$16[/COLOR]:$K$16;0))
[/FONT]
 
Hỏi về hàm index,match

Tìm hệ số

Xem file đinh kèm
 

File đính kèm

Lần chỉnh sửa cuối:
Tìm hệ số

Xem file đinh kèm

Cách của Ndu rất ngắn gọn, sáng tạo,..
Tuy nhiên, nếu muốn dùng index, match thì:
PHP:
=INDEX($B$19:$D$22,MATCH(G5,$A$19:$A$22,1),MATCH(H5,LEFT($B$18:$D$18),1))
hay

PHP:
=INDEX($B$19:$D$22,MATCH(G5,$A$19:$A$22,1),MATCH(1*H5,1*LEFT($B$18:$D$18),1))
và kết thúc với Ctrl+Shift+Enter
 
Lần chỉnh sửa cuối:
Thanks

Cách của Ndu rất ngắn gọn, sáng tạo,..
Tuy nhiên, nếu muốn dùng index, match thì:
PHP Code:
=INDEX($B$19:$D$22,MATCH(G5,$A$19:$A$22,1),MATCH(H5,LEFT($B$18:$D$18),1))


hay

PHP Code:
=INDEX($B$19:$D$22,MATCH(G5,$A$19:$A$22,1),MATCH(1*H5,1*LEFT($B$18:$D$18),1))


và kết thúc với Ctrl+Shift+Enter
Em vừa mới học hàm INDEX,MATCH nên chưa hiểu rõ .

Giải thích dùm em ý nghĩa của đoạn
Hàm left ở đây có tác dụng gì



Thêm "*1" có tác dụng gì

=INDEX($B$19:$D$22,MATCH(G5,$A$19:$A$22,1),MATCH(1*H5,1*LEFT($B$18:$D$18),1))
Tại sao phải nhấn Ctrl+Shift+Enter mới ra kết quả

Giúp em Tính THƯỞNG của bài 4 trong Book1.xls
 
Lần chỉnh sửa cuối:
Thanks

Em vừa mới học hàm INDEX,MATCH nên chưa hiểu rõ .

Giải thích dùm em ý nghĩa của đoạn Hàm left ở đây có tác dụng gì



Thêm "*1" có tác dụng gì

Tại sao phải nhấn Ctrl+Shift+Enter mới ra kết quả

Giúp em Tính THƯỞNG của bài 4 trong Book1.xls

- Hàm Left ở đây là lấy 1 ký tự bên phía trái của chuỗi, bạn thử =LEFT($B$18) tương đương với =LEFT($B$18,1) cho ra kết quả 1, =LEFT($C$18) cho ra kết quả 4, =LEFT($D$18) cho ra kết quả 7 => =LEFT($B$18:$D$18) cho là một mảng 1,4 và 7 với điều kiện kết thúc bằng Ctrl+Shift+Enter.
- Còn 1* tương đương với Value() hay dấu "--" phía trước công thức.
- Ctrl+Shift+Enter là kết thúc của một công thức mảng thì khi đó mảng với các biểu thức mới hình thành và cho ra kết quả !
- Bài tập số 4, chỉ cần dùng Hlookup tại E4, =HLOOKUP(D4,$C$20:$E$23,IF(C4<10,2,IF(C4>20,4,3)),0) chứ không nhất thiết là phải dùng INDEX, MATCH,..
 
Lần chỉnh sửa cuối:
tôi thì dùng hàm này
các anh xem và chỉ giáo nhé
I5=VLOOKUP(G5,$A$17:$D$22,LOOKUP(VALUE(H5),{0,1,4,7},{0,2,3,4}),0)
 

File đính kèm

bạn ơi có thể cho ví dụ cụ thể hơn tí nữa được không vậy mình vẫn chưa hiểu lắm
 
Bạn tìm mua sách Giải pháp Excell của tác giá Ông Văn Thông, viết rất là dân dã và dễ hiểu, có ví dụ dễ nhớ.

Có điều em rất là bực vì đến giờ vẫn chưa tìm được sách dạy VBA. Hình như các cú pháp, thuật ngữ ở trong VBA cũng giống pascal phải không mấy anh chị? Em học pascal đã hơn 10 năm rồi nên giờ không nhớ được gì. Anh chị nào biết chỗ nào bán sách dạy dễ hiểu không giới thiệu cho em nói riêng và cho mọi người nói chung với. Em xin chân thành cảm ơn mọi người.
 
Mọi người giúp hàm Index và Match

Mọi người giúp với, ô Hệ số dùng vlookup và if thì dễ rồi, nhưng dùng index và match thì mình ko biết phải làm sao cả, vì cái bảng tính hệ số viết kiểu đó thì bó tay hjc
 

File đính kèm

Chỉnh sửa lần cuối bởi điều hành viên:
Theo mình dùng index với match thì cũng phải dùng if thôi, số năm công tác nằm trong 1 khoảng nên không dùng match để xác định 1 vị trí cụ thể được.
 
Mọi người giúp với, ô Hệ số dùng vlookup và if thì dễ rồi, nhưng dùng index và match thì mình ko biết phải làm sao cả, vì cái bảng tính hệ số viết kiểu đó thì pó tay hjc
Sao lại bó tay, coi thường ông Bill dữ "zậy", viết kiểu nào cũng "xử", nếu đây là bài tập sẵn ôn một lần kết hợp.... 6 hàm luôn
Bạn dùng cái công thức này thử xem (ở I6, fill xuống)
=INDEX($B$20:$D$23,MATCH(G6,$A$20:$A$23,0),LOOKUP(H6,VALUE(LEFT($B$19:$D$19)),COLUMN(A:C)))
 
Sao lại bó tay, coi thường ông Bill dữ "zậy", viết kiểu nào cũng "xử", nếu đây là bài tập sẵn ôn một lần kết hợp.... 6 hàm luôn
Bạn dùng cái công thức này thử xem (ở I6, fill xuống)
=INDEX($B$20:$D$23,MATCH(G6,$A$20:$A$23,0),LOOKUP(H6,VALUE(LEFT($B$19:$D$19)),COLUMN(A:C)))
cám ơn bạn, nhưng tớ chưa hiểu từ đoạn này
LOOKUP( H6,VALUE(LEFT($B$19:$D$19)),COLUMN(A:C)))
 
Bạn cũng có thể dùng công thức này:
Mã:
I6 =INDEX($B$20:$D$23,MATCH(G6,$A$20:$A$23,0),IF(H6<=3,1,IF(H6<=6,2,3)))
 
Dò tìm theo Column & Row dùng hàm Index và Match

Em dùng kết hợp hàm Index và Match để xuất kết quả ra 1 bảng SL khác, nhưng làm sao để khi em thay đổi mục chọn thì kết quả tước vẫn không thay đổi...Các bác xem file đính kèm rồi gỡ rối giùm em nhé.
 

File đính kèm

Web KT

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

Back
Top Bottom