Giới thiệu hàm Offset
Công dụng: Trả về tham chiếu đến một vùng nào đó, cách một ô hoặc một dãy ô một khoảng cách với số dòng hoặc số cột được chỉ định trước. Chúng ta có thể chỉ định số dòng, số cột của vùng tham chiếu trả về. Cú pháp: =OFFSET(reference, rows, cols, height, width) Trong đó:
o reference: là vùng tham chiếu làm cơ sở cho hàm (làm điểm xuất phát) để tạo vùng tham chiếu mới. reference phải chỉ đến một ô hoặc một dãy ô liên tục, nếu không hàm sẽ trả về lỗi #VALUE!. o rows: là số dòng bên trên hoặc bên dưới reference, tính từ ô đầu tiên (ô ở góc trên bên trái) của reference. Ví dụ nếu rows là 3, sẽ có 3 dòng trả về và nằm bên dưới reference. Khi rows là số dương thì các dòng trả về nằm bên dưới reference, khi rows là số âm thì các dòng trả về nằm bên tr reference. o cols: là số cột bên trái hoặc bên phải reference, tính từ ô đầu tiên (ô ở góc trên bên trái) của reference. Ví dụ nếu cols là 4 sẽ có 4 cột trả về và nằm bên phải của reference. Khi cols là số dương thì các cột trả về nằm bên phải reference, khi cols là số âm thì các cột trả về nằm bên trái reference o height: là số dòng của vùng tham chiếu cần trả về. Height phải là số dương. o width: là số cột của vùng tham chiếu cần trả về. Width phải là số dương. Lưu ý:
o Nếu rows và cols làm cho tham chiếu trả về vượt ra ngoài phạm vi của một worksheet, hàm Offset sẽ báo lỗi #REF! o Nếu bỏ qua height và width, thì height và width sẽ có kích thước mặc định là height và width của reference. o Offset thật sự không di chuyển bất cứ ô nào, cũng không thay đổi bất kỳ phần chọn nào, nó c trả về tham chiếu mà thôi. Chúng ta có thể sử dụng Offset với bất kỳ hàm nào cần đối số là một tha chiếu. Ví dụ, công thức Sum(Offset(C10,1,2,3,1)) sẽ tính tổng các giá trị của một dãy gồm ba dòng, một cột; đây là dãy nằm bên dưới ô C10 một dòng và bên phải ô này hai cột.
Các ví dụ
Offset và Validation List
a. Có bao giờ bạn muốn tạo một Validation List mà nội dung của nó thay đổi theo sự thay đổi của một List khác (danh sách). Bài viết này sẽ hướng dẫn từng bước cách làm: Giả sử bạn có danh sách gồm 2 cột: OS (hệ điều hành) và Versions (Phiên bản) (Xem file đính kèm). Bây giờ bạn muốn tạo một Validation List để khi tại ô G3 ta chọn một OS nào đó thì danh sách trong ô H3 sẽ chỉ hiển thị các Versions của OS mà ta đang chọn (xem hình 6).
Qui trình thực hiện:
B1. Tạo một danh sách A1:B34 (xem file đính kèm), với 2 cột OS và Versions. Lưu ý một OS có th có nhiều Version.
B2. Đặt tên cho vùng A2:A34 với tên là “OS”. Bạn quét chọn vùng A2:A34 | nhấn tổ hợp là có thể khai báo việc đặt tên vùng và sao đó nhấn nút Add để hoàn thành.
B3. Tạo một danh sách chứa tên các hệ điều hành được trích ra từ cột OS (danh sách này không trùng lặp). Bạn quét chọn các ô D2:D34 dùng để chứa danh sách kết quả trích lọc không trùng | nhập vào công thức mảng trích lọc sau: =IF(ISERR(INDEX(OS,SMALL(IF(MATCH(OS,OS,0)=ROW(IND IRECT("1:"&ROWS(OS))), MATCH(OS,OS,0),""),ROW(INDIRECT("1:"&ROWS(OS)))))) ,"", INDEX(OS,SMALL(IF(MATCH(OS,OS,0)=ROW(INDIRECT("1:" &ROWS(OS))), MATCH(OS,OS,0),""),ROW(INDIRECT("1:"&ROWS(OS)))))) Kết thúc công thức bằng tổ hợp phím . Công thức trên sẽ trích ra các loại hệ điều hành (OS) và mỗi loại chỉ lấy một lần, các dòng trùng sẽ thay bằng “”.
B4. Sau khi đã có danh sách các OS duy nhất, bạn hãy đặt tên cho danh sách này. Lưu ý, có khả năng có những loại OS khác do vậy ở đây khi đặt tên là dùng hàm Offset để tham chiếu đến vùng dữ liệu động.
Bạn nhấn | Chọn New… | đặt tên cho vùng là OSValList tại Name | tại Refers to nhập vào công thức sau; =OFFSET(Offset2!$D$2,0,0,COUNTA(Offset2!$D$2:$D$34 )-COUNTIF(Offset2!$D$2:$D$34,""),1 Công thức trên giúp trả về vùng tham chiếu các OS duy nhất một cách động.
B5. Tạo bảng nhỏ như hình bên dưới. Chọn ô G3 và đặt tên là Val1Cell, chọn ô H3 đặt tên là Val2Cell (theo cách đặt tên nêu trên hoặc có thể đặt tên bằng cách gõ trực tiếp vào Name Box).
B6. Đây là bước quan trọng giúp cho danh sách chọn tại H3 sẽ thay đổi phụ thuộc vào tùy chọn tạ G3. Bạn đặt tên cho vùng Versions với tham chiếu trả về thay đổi theo tùy chọn của G3 như sau: Nhấn | chọn New… | tại hộp Name nhập vào tên là Versions | tại Refers to nhập vào công thức sau; =OFFSET(INDIRECT(ADDRESS(MATCH(Val1Cell,OS,0)+1,2, ,,)),0,0,COUNTIF(OS,Val1Cell),1) Công thức này giúp chọn ra vùng Versions tương ứng với việc chọn OS tại ô G3. B7. Áp Validation cho 2 ô G3 và H3: Chọn ô G3 | vào Data | Data Validation | Settings | chọn List | tại Source nhập vào =OSValList | nhấn nút Ok hoàn tất. Chọn ô H3 | vào Data | Data Validation | Settings | chọn List | tại Source nhập vào =Versions | nhấn nút Ok hoàn tất.
Các bước đã hoàn tất, các bạn hãy chọn thử một OS nào đó tại G3 và qua ô H3 xem danh sách
Version tương ứng.
CÁC HÀM THƯỜNG DÙNG TRONG EXCEL WEDNESDAY, 5. MARCH 2008, 15:36:09 TIN HỌC VĂN PHÒNG
Để giúp cho những bạn mới làm quen với Excel, mình xin trình bày một số hàm thông dụng sau: Hàm LEFT, Hàm RIGHT, Hàm MID, Hàm LEN, Hàm VALUE, Hàm PRODUCT, Hàm MIN, Hàm MAX, Hàm AVERAGE, Hàm SUM, Hàm IF, Hàm VLOOKUP, Hàm HLOOKUP, Hàm INDEX, Hàm MATCH,... 1. Hàm LEFT Hàm LEFT cho kết quả là chuỗi con bên trái của một chuỗi cho trước với số lượng ký tự được chỉ định trước. Cú pháp: LEFT(text,num_chars) Các tham số: - Text: Là chuỗi cho trước (ký tự trắng vẫn kể là một ký tự) - Num_chars: Số lượng ký tự cần lấy VD = LEFT(“Saigon – Ho Chi Minh Ville”,20) = Saigon - Ho Chi Minh 2. Hàm RIGHT Hàm RIGHT cho kết quả là chuỗi con bên phải của một chuỗi cho trước với số lượng ký tự được chỉ định trước. Cú pháp: RIGHT(text,num_chars) Các tham số: Tương tư hàm LEFT VD = RIGHT(“Saigon – Ho Chi Minh Ville”,17) = Ho Chi Minh Ville 3. Hàm MID Hàm MID cho kết quả là chuỗi con của một chuỗi cho trước trên cơ sở vị trí và số ký tự được xác định trước. Cú pháp: MID(text,start_num,num_chars) Các tham số: - Text và num_chars: Tương tự như ở hàm LEFT, RIGHT - Start_num: Vị trí của ký tự bắt đầu (ký tự đầu tiên là 1, ký tự thứ hai là 2, …) VD [Only registered and activated users can see links] = MID(A3,2,3) = VCD. = MID(A2,6,8) = Sony 14" 4. Hàm LEN Hàm LEN đo chiều dài của chuỗi (text). Mỗi ký tự được tính là 1 đơn vị, kể cả ký tự trắng (khoảng cách giữa hai ký tự hoặc hai từ). Text phải được đặt trong dấu ngoặc kép (“”).
Cú pháp: LEN(text) Ví dụ: = LEN(“informatics”) = 11. = LEN(“Long Xuyen city”) = 15 5. Hàm VALUE Hàm VALUE đổi chuỗi chứa số (text) thành giá trị số. Text phải được đặt trong dấu ngoặc kép (“”). Cú pháp: VALUE(text) Ví dụ: = Value(“$1000000”) = 1.000.000. = Value(“1001 dem”) = #VALUE! = Value(left(“1001 dem”,4)) = 1000 6. Hàm PRODUCT Hàm PRODUCT cho kết quả là tích của các số được cho là đối số. Cú pháp: PRODUCT(number1,number2,…) Tham số: Number1, number2, … là các số từ 1 đến 30 mà ta muốn tính tích. Nếu một đối số là mảng hoặc tham chiếu thì chỉ có các số trong mảng hoặc tham chiếu mới được đếm. Các Cell trống, giá trị logic hoặc text trong mãng hoặc tham chiếu được bỏ qua. Ví dụ: [Only registered and activated users can see links] = PRODUCT(B2,B3,B4) = PRODUCT(B2:B4) = 80 = PRODUCT(A2:B5) = 80 = PRODUCT(A2:B6) = #N/A 7. Hàm MIN Hàm MIN cho kết quả là giá trị bé nhất trong các đối số được chỉ định Cú pháp: MIN(number1,number2, …) Các tham số: number1, number2, … là những giá trị số. Ví dụ: = MIN(4,8,9,10,3,5) = 3 8. Hàm MAX Hàm MAX cho kết quả là giá trị lớn nhất trong các đối số được chỉ định Cú pháp: MAX(number1,number2, …) Các tham số: number1, number2, … là những giá trị số. Ví dụ: = MAX(4,8,9,10,3,5) = 10 9. Hàm AVERAGE
Hàm AVERAGE cho kết quả là giá trị trung bình số học của các đối số. Cú pháp: AVERAGE(number1,number2, …) Các tham số: tương tự hàm MIN và MAX. Ví dụ: = AVERAGE(5,7,6) = 6. = AVERAGE(10,15,9) = 11,33 10. Hàm SUM Hàm SUM cho kết quả là tổng các đối số trong một khối hoặc một tham chiếu hoặc một danh sách. Cú pháp: SUM((number1,number2, …) Các tham số: tương tự hàm MIN và MAX. Ví dụ: [Only registered and activated users can see links] = SUM(B2:B4) = 13. = SUM(7,10,9) = 26 11. Hàm IF Hàm IF dùng để trắc nghiệm điều kiện để chọn một trong hai giá trị. Nếu điều kiện đúng thì chọn giá trị 1, ngược lại chọn giá trị 2. Cú pháp: IF(logicaltest,truevalue,falsevalue) Các tham số: - Logicaltest: Điều kiện dùng để trắc nghiệm (xác định điều kiện này là đúng hay sai). - Truevalue: Là kết quả của hàm IF nếu logicaltest đúng - Falsevalue: Là kết quả của hàm IF nếu logicaltest sai Ví dụ: [Only registered and activated users can see links] = IF(B2>=4,“DUNG”,“SAI”) = DUNG. = IF(B2>=5,“DUNG”,“SAI”) = SAI 12. Hàm VLOOKUP: Hàm Vlookup tìm kiếm một giá trị trong cột bên trái ngoài cùng của bảng (table_array), rồi cho ra giá trị trong cùng hàng tính từ một cột (col_index_number) mà ta chỉ định trong bảng. Hoặc hàm Vlookup lấy giá trị của Cell dò (lookup_value) trong cột đầu tiên của khối (table_array), khi gặp mã số tương ứng ở Cell nào thì lệch sang cột được chỉ định (col_index_num) để lấy giá trị trong Cell đó (cùng hàng). Cú pháp: VLOOKUP(lookup_value,table_array,col_index_num,ran ge_lookup) Các tham số của hàm: - Lookup_value: Là giá trị phải được dò tìm trong cột đầu tiên của table_array. Lookup_value có thể là một giá trị, một tham chiếu hoặc một chuỗi ký tự (không phân biệt chữ hoa hay chữ thường). Nếu lookup_value nhỏ hơn giá trị nhỏ nhất trong cột đầu tiên của table_array thì hàm Vlookup cho ra giá trị lỗi #N/A (Not Available, bất khả thi).
- Table_array: Là một bảng thông tin, qua đó dữ liệu được tìm kiếm. Table_array có thể là một dãy hoặc một tên. Đặt Table_array trong giá trị tuyệt đối ($A$1:$D$20). - Col_index_num: Là số thứ tự của cột nằm trong table_array. Số thứ tự này phải lớn hơn hoặc bằng 2. Ví dụ: Col_index_num=2 sẽ cho giá trị trong cột thứ hai của table_array, Col_index_num=3 sẽ cho giá trị trong cột thứ ba của table_array, … (Nếu Col_index_num=0 thì hàm Vlookup cho ra giá trị lỗi #VALUE, nếu Col_index_num=1 thì kết quả dò tìm là chính nó, nếu Col_index_num lớn hơn số lượng cột trong table_array thì hàm Vlookup cho ra giá trị lỗi #REF!) - Range_lookup: Là một giá trị (0 hoặc 1) hay giá trị logic (false hoặc true) cho biết ta có muốn tìm một liên kết chính xác hay không. Nếu không chỉ định range_lookup thì mặc nhiên là 1 hay true. + Nếu Range_lookup=1 (true): Cột đầu tiên của table_array phải được sắp xếp theo thứ tự tăng dần (… -2, -1, 0, 1, 2 hoặc A, B, …Z hoặc False, True), ngược lại có thể hàm Vlookup sẽ cho giá trị không đúng. Nếu hàm Vlookup không tìm thấy lookup_value và range_lookup=1 (true) thì nó sử dụng giá trị lớn nhất nhưng nhỏ hơn hoặc bằng lookup_value. + Nếu range_lookup=0 (false): Cột đầu tiên trong table_array không cần sắp xếp theo thứ tự nào cả. Trường hợp này được sử dụng phổ biến nhất. Nếu hàm Vlookup không tìm thấy lookup_value và range_lookup=0 (false) thì nó cho giá trị lỗi #N/A. Ví dụ: [Only registered and activated users can see links] = VLOOKUP(A1,A1:C5,3,0) = 150 (Danh sách không cần sắp theo thứ tự) = VLOOKUP(“VL”,A1:C5,2,0) = 70 = VLOOKUP(“CM”,A1:C5,2,0) = #N/A Hàm VLOOKUP tìm giá trị theo cột. 13. Hàm HLOOKUP: Hàm HLOOKUP tìm kiếm một giá trị ở hàng trên cùng của bảng (table_array) hoặc một mảng các giá trị, rồi cho ra giá trị trong cùng cột tính từ một hàng (row_index_num) mà ta chỉ định trong bảng hoặc mảng. Cú pháp: HLOOKUP(lookup_value,table_array,row_index_num,ran ge_lookup) Hoặc hàm HLOOKUP lấy giá trị của Cell dò (lookup_value) trong hàng đầu tiên của khối (table_array), khi gặp mã số tương ứng ở Cell nào thì lệch xuống hàng được chỉ định (row_index_num) để lấy giá trị trong Cell đó (cùng cột). Các tham số của hàm: tương tự như hàm Vlookup. Ví dụ: [Only registered and activated users can see links] = HLOOKUP(A1,A1:C4,3,0) = HLOOKUP(“AG”,A1:C4,3,0) = 150 = HLOOKUP(B1,A1:C4,4,0) = HLOOKUP(“VL”,A1:C4,4,0) = 90 = HLOOKUP(“BL”,A1:C4,3,0) = #N/A Hàm HLOOKUP tìm giá trị theo hàng. 14. Hàm INDEX: Hàm Index cho kết quả là giá trị của một Cell được chỉ định bởi rownum và colnum bên trong array. Cú pháp: INDEX(array,rownum,colnum)
Các tham số của hàm: - Array: Là một mảng chứa các thông tin cần tìm, cột/dòng đầu tiên là 1. - Rownum: Số thứ tự của một dòng trong array. - Colnum: Số thứ tự của một cột trong array. Ví dụ: [Only registered and activated users can see links] =INDEX (A1 : D3,1,2)=10. =INDEX (A1 : D3,2,3)=17. =INDEX (A1 : D3,3,4)=18 15. Hàm MATCH: Hàm Match cho kết quả là vị trí tương đối của giá trị tìm (lookup_value) trong một mảng (lookup_array) kết với một giá trị chỉ định theo thứ tự đặc biệt (match_type). Cú pháp: MATCH(lookup_value,lookup_array,match_type) Các tham số của hàm: - Lookup_value: Là giá trị mà ta dùng để tìm giá trị mà ta mong muốn trong một mảng (lookup_array). Lookup_value có thể là giá trị (số, text, hoặc giá trị logic) hoặc là một tham chiếu đến một số, text, hoặc giá trị logic. - Lookup_array: Mảng chứa các giá trị tìm kiếm. Lookup_array có thể là mảng hoặc tham chiếu mảng. - Match_type: Là một con số xác định cách dò tìm: -1 hoặc 0 (false) hoặc 1 (true). Nếu match_type được bỏ qua thì mặc nhiên được hiểu là 1. + Match_type = -1: Tìm giá trị nhỏ nhất trong lookup_array, lớn hơn hay bằng giá trị dò. Lookup_array phải được sắp xếp theo thứ tự giảm dần. + Match_type = 1 (true): Tìm giá trị lớn nhất trong lookup_array, nhỏ hơn hay bằng giá trị dò. Lookup_array phải được sắp xếp theo thứ tự tăng dần. + Match_type = 0 (false): Tìm giá trị đầu tiên bằng giá trị tìm trong lookup_array. Lookup_array không cần sắp theo thứ tự nào cả. • Nếu tìm không thấy, hàm cho giá trị là #N/A • Không phân biệt giữa chữ hoa và chữ thường. • Nếu match_type = 0 và lookup_value là text thì trong lookup_value có thể chứa các ký tự đại diện như: + Dấu ?: Thay cho một ký tự bất kỳ. + Dấu *: Thay cho tổ hợp (nhiều) ký tự bất kỳ. Ví dụ: [Only registered and activated users can see links] = MATCH(“Tôi”,A1:C1,-1) = #N/A (vì các thành phần trong mảng được sắp theo thứ tự tăng dần, trong khi đó Match_type = -1 thì phải sắp theo thứ tự giảm dần). = MATCH(“Toi”,A1:C1,0) = 3. = MATCH(“Anh”,A1:C1,1) = 1 Hàm MATCH: cho vị trí xuất hiện của Cell được tìm thấy trong mảng, chứ không phải là giá trị của Cell đó. Dùng hàm TYPE để xác định kiểu dữ liệu, cụ thể: Giá trị trả về của hàm TYPE - Kiểu dữ liệu
1 - Number 2 - Text 3 - Logical value 16- Error value 64- Array
Nhóm hàm LOOKUP cho phép tìm kiếm theo khoá và trả về một thông tin liên quan đến khoá đó. Hàm INDEX và MATCH để tra cứu một trị cụ thể từ một bảng.
Nhóm hàm LOOKUP Vertical Lookup Cú pháp: col_index_num,range_lookup)
VLOOKUP(lookup_value,table_array,
Hàm VLOOKUP tìm trên cột bên trái của vùng table_array cho đến khi thấy lookup_value thì dò sang ngang lấy ô nằm ở cột được chỉ ra bởi col_index_num. Cột đầu có thể chứa văn bản, số, hay các trị logíc và được sắp xếp tăng dần. Không phân biệt chữ hoa chữ thường. Range_lookup là một trị logical (TRUE hay FALSE). Nếu là TRUE hay bỏ qua thì VLOOKUP trả lại kết quả gần đúng; nếu FALSE, VLOOKUP trả lại kết quả chính xác hoặc #N/A khi không tìm thấy. Nếu không thấy lookup_value, VLOOKUP sẽ tìm giá trị lớn nhất nhỏ hơn lookup_value. Tham số: lookup_value là một trị, địa chỉ hay chuỗi; table_array là địa chỉ vùng bảng tìm kiếm; col_index_num là cột trong bảng có chứa trị tìm kiếm; và range_lookup (tuỳ chọn) là giá trị lôgíc TRUE hay FALSE (1 hoặc 0). Kết quả: Trị trong ô cùng hàng với lookup_value trong bảng, ở cột chỉ định; hoặc #N/A nếu không tìm thấy.
Horizontal Lookup Cú pháp: row_index_num,range_lookup)
HLOOKUP(lookup_value,table_array,
Hàm HLOOKUP tìm trên hàng đầu của vùng table_array cho đến khi gặp lookup_value thì dò xuống đến hàng chỉ ra bởi row_index_num. Range_lookup là một giá trị kiểu logíc (TRUE hay FALSE). Nếu là TRUE hay bỏ qua, HLOOKUP trả lại kết quả gần đúng. Nếu là FALSE, HLOOKUP trả lại kết quả chính xác hay #N/A nếu không tìm thấy. Hàng đầu của table_array phải được sắp xếp tăng dần, theo chữ cài hay số . Trị tìm kiếm lookup_value và các giá trị trong hàng đầu của table_array có cùng kiểu và có thể là văn bản, số hay trị lôgíc. Row_index_num bắt đầu từ 1. Để trả lại một trị nằm trong hàng đầu - nhập
1, hàng hai - nhập 2, và tiếp tục. Nếu row_index_num bé hơn 1, HLOOKUP sinh lỗi #VALUE!. Nếu row_index_num lớn hơn số hàng có trong bảng hàm sinh lỗi #REF!. Tham số: lookup_value là trị, địa chỉ, hay chuỗi văn bản phụ thuộc vào hàng đầu của bảng; table_array là địa chỉ của bảng; row_index_num là số thứ tự của hàng trong bảng có chứa trị cần tìm; range_lookup (tuỳ chọn) có giá trị TRUE hay FALSE (1 hoặc 0). Kết quả: Giá trị trong ô cùng cột với lookup_value, hàng chỉ định; #N/A nếu không thấy.
Lookup dạng mảng Cú pháp: LOOKUP(lookup_value,array) Hàm LOOKUP hoạt động tương tự như HLOOKUP và VLOOKUP. LOOKUP tìm kiếm lookup_value trên hàng đầu hay cột đầu của bảng array, tuỳ thuộc vào hình dạng của bảng array. Nếu bảng array có hình vuông hoặc rộng hơn cao, LOOKUP tìm lookup_value trên hàng đầu. Nếu bảng cao hơn rộng, tìm kiếm thực hiện trên cột đầu. Nếu LOOKUP không tìm thấy lookup_value, nó sẽ lấy giá trị lớn nhất dưới lookup_value. Nếu lookup_value nhỏ hơn giá trị bé nhất trong hàng hay cột được tìm hàm trả về lỗi #N/A. Giá trị trả về được lấy ở hàng cuối hay cột cuối của bảng lookup_value. Cột hay hàng tìm kiếm phải được sắp xếp theo trật tự tăng dần. Tham số: lookup_value dưới dạng số, chuỗi hay giá trị lôgíc; array là địa chỉ vùng tìm kiếm. Kết quả: Giá trị của của một ô ở hàng cuối hay cột cuối của bảng tìm kiếm.
Lookup dạng véc tơ Cú pháp: LOOKUP(lookup_value,lookup_vector,result_vector) Tìm kiếm trị lookup_value trên hàng hay cột chỉ ra bởi lookup_vector cho đến khi thấy trị cần tìm thì sẽ dò sang ô tương ứng trong result_vector và trả về trị trong ô đó. Tham số: Lookup_value là giá trị mà LOOKUP tìm kiếm trên véc-tơ thứ nhất. Lookup_value có thể là số, văn bản, giá trị logíc, tên hay địa chỉ. Lookup_vector là cột hay hàng chứa văn bản, số hay kiểu logíc và được sắp xếp tăng dần. Result_vector là hàng hay cột chứa trị trả về có cùng kích thước như lookup_vector .
Cặp hàm INDEX và MATCH
Hàm Index Cho tham chiếu tới hay trị của một ô hay một mảng Cú pháp: hai dạng =INDEX(array,row_num,column_num) =INDEX(reference,row_num,column_num, area_num) Dạng đầu trả về trị của một ô hay mảng các trị của các ô. Dạng hai trả về tham chiếu tới một ô hay mảng các ô. Tham số: Array là địa chỉ mảng. Row_num số thứ tự của hàng, Column_num số tứ tự của cột. Reference là địa chỉ vùng lớn, area_num là số thứ tự của vùng con trong vùng lớn. Kết quả:Trị của ô, mảng trị cho dạng 1; tham chiếu ô, mảng tham chiếu cho dạng 2 Ví dụ: Hàm sau cho kết quả là 10: =INDEX({2,3,4;10,11,12},2,1) Công thức sau trả về tham chiếu tới ô C5, nằm ở hàng thứ hai và cột thứ ba trong vùng thứ nhất: =INDEX((A4:D7,F10:J15),2,3,1)
Hàm Match Cú pháp: =MATCH(lookup_value,lookup_array, match_type) Hàm MATCH trả về vị trí tương đối của lookup_value trong lookup_array. Kiểu tìm do match_type chi phối. Trị lookup_value có thể là số, chuỗi, giá trị logíc hay địa chỉ ô. MATCH trả lại vị trí của hàng hay cột trong mảng có chứa trị tìm thấy. Thường được sử dụng kết hợp với hàm INDEX để tra một trị trong mảng. Các dạng so khớp Match_type Tìm kiếm 1, hay bỏ Trị lớn nhất nhỏ hơn hoặc bằng lookup_value. Lookup_array qua phải được sắp xếp tăng 0 Tìm chính xác. Trị bé nhất nhất lớn hơn hoặc bằng lookup_value. Lookup_array -1 phải được sắp xếp giảm.
Tham số: lookup_value là trị cần tìm trên mảng; lookup_array là mảng chứa các trị; và match_type (tuỳ chọn) là một trong các số 1, 0, hay -1, chi phối cách tìm kiếm. Kết quả: Vị trí tương đối lookup_value trong lookup_array.