Lookup Functions in Zoho Sheets

Getting your Trinity Audio player ready...

Data is powerful only when you can find and connect it effectively — and that’s where Lookup Functions in Zoho Sheets come in.
Whether you’re fetching employee details from another table, finding product prices, or matching IDs across multiple datasets, lookup formulas are the backbone of any spreadsheet-based data analysis.

Lookup Functions in Zoho Sheets

In this guide, we’ll learn about the most used lookup functions in Zoho Sheets — VLOOKUP, HLOOKUP, XLOOKUP, INDEX, MATCH, and their combinations — with real-life business scenarios, examples, and syntax.


1. Introduction to Lookup Functions

Lookup functions allow you to search a value in one part of your sheet and return related information from another column or row.

For example:
If you have an Employee ID and want to fetch the Employee Name or Department automatically — lookup functions make that possible.

Why Use Lookup Functions?

✅ Save time by avoiding manual search
✅ Reduce human errors
✅ Link related datasets (like Sales & Products tables)
✅ Make your reports and dashboards dynamic


Sample Dataset

Let’s use the following sample data throughout our examples:

Employee IDEmployee NameDepartmentDesignationSalaryLocation
EMP001Priya SharmaHRHR Manager65000Delhi
EMP002Amit PatelFinanceAccountant48000Mumbai
EMP003Neha VermaITDeveloper75000Bangalore
EMP004Rohit DasITAnalyst72000Pune
EMP005Meena JoshiMarketingMarketing Head82000Chennai
EMP006Rakesh SinghHRRecruiter46000Delhi
EMP007Aarav GuptaFinanceSr. Accountant54000Mumbai
EMP008Sneha RaoITTester50000Hyderabad
EMP009Kiran SahuSalesSales Executive42000Raipur
EMP010Anjali JainSalesSales Manager70000Jaipur

2. VLOOKUP Function in Zoho Sheets

Syntax:

=VLOOKUP(lookup_value, table_array, col_index, [is_sorted])

Parameters:

  • lookup_value: The value you want to search (e.g., Employee ID)
  • table_array: The range containing data
  • col_index: The column number to return value from
  • is_sorted: Use FALSE for exact match, TRUE for approximate

Example 1: Find Employee Name by Employee ID

Formula:

=VLOOKUP("EMP004", A2:F11, 2, FALSE)

Result: Rohit Das

This searches column A for EMP004 and returns the corresponding value from column 2 (Employee Name).


Example 2: Dynamic VLOOKUP using Cell Reference

If Employee ID is entered in H2, and you want to display Department in I2:

=VLOOKUP(H2, A2:F11, 3, FALSE)

Now, when you change the Employee ID in H2, the Department updates automatically — perfect for interactive dashboards or forms.


Example 3: Error Handling with VLOOKUP

Sometimes the searched value might not exist. Combine VLOOKUP with IFERROR:

=IFERROR(VLOOKUP(H2, A2:F11, 2, FALSE), "Not Found")

If no match is found, it returns “Not Found” instead of showing an error.

Read More: How to use IFERROR & IFNA

Example 4: Lookup from Another Zoho Sheet (Cross-Sheet Lookup)

In real business use cases, your data is rarely stored in a single spreadsheet.
You might have:

  • One Zoho Sheet with the Employee Master Data
  • Another Zoho Sheet used for Payroll or Attendance

In such cases, you can link data across multiple Zoho Sheets using:

The IMPORTRANGE() function — just like in Google Sheets.

Syntax:

=IMPORTRANGE("spreadsheet_url", "range_string")
  • spreadsheet_url: The URL of the other Zoho Sheet
  • range_string: The specific range, e.g., "Sheet1!A2:F11"

Example:

Let’s say your Employee Master Sheet has this link:

https://sheet.zoho.com/sheet/open/abcd12345

To import Employee ID and Salary columns, use:

=IMPORTRANGE("https://sheet.zoho.com/sheet/open/abcd12345", "EmployeeMaster!A2:E11")

This will pull the data into your current sheet.

Now, you can apply a VLOOKUP on the imported range like this:

=VLOOKUP(A2, IMPORTRANGE("https://sheet.zoho.com/sheet/open/abcd12345", "EmployeeMaster!A2:E11"), 5, FALSE)

Explanation:

  • A2 → Employee ID to search
  • IMPORTRANGE(...) → Imports employee master data dynamically
  • 5 → Fetches value from the 5th column (Salary)
  • FALSE → Ensures exact match

Result: Displays the Salary of the employee even though the source data lives in another Zoho Sheet.


Real-Life Scenario: Multi-Branch Payroll System

Suppose you have:

  • HR_Master.zohosheet (Employee master for all branches)
  • Branch_Raipur.zohosheet (Branch-specific payroll)

In Branch_Raipur, you can import and connect to the master sheet using IMPORTRANGE()

Then, run:

=VLOOKUP(Employee_ID, ImportedRange, 5, FALSE)

to fetch Employee Salary, Department, or Designation — directly from the main HR file.

💡 This ensures consistency, centralization, and automation across multiple departments — a perfect setup for MIS or Data Analyst roles managing multi-sheet data.

Also Read: All About IMPORTRANGE Function


3. HLOOKUP Function

Syntax:

=HLOOKUP(lookup_value, table_array, row_index, [is_sorted])

HLOOKUP works horizontally — it searches in the first row and returns a value from the same column in a specified row.


Example 1: Get Employee Name using Horizontal Table

Data TypeEMP001EMP002EMP003
NamePriya SharmaAmit PatelNeha Verma
DepartmentHRFinanceIT
Salary650004800075000

Formula:

=HLOOKUP("EMP002", A1:D4, 3, FALSE)

Result: 48000
This looks for EMP002 in row 1 and returns the corresponding salary from row 3.


Example 2: HLOOKUP with IFERROR

=IFERROR(HLOOKUP(H2, A1:D4, 2, FALSE), "Not Available")

If employee code isn’t found, it will display a clean message instead of an error.


4. XLOOKUP Function (The Modern Replacement)

Zoho Sheets supports XLOOKUP, which simplifies lookup operations — it replaces both VLOOKUP and HLOOKUP.

Syntax:

=XLOOKUP(lookup_value, lookup_array, return_array, [if_not_found])

Example 1: Find Department by Employee Name

=XLOOKUP("Amit Patel", B2:B11, C2:C11, "Not Found")

Result: Finance

It searches for Amit Patel in column B and returns the corresponding department from column C.


Example 2: XLOOKUP with Cell Reference

If user types the employee name in H2, use:

=XLOOKUP(H2, B2:B11, D2:D11, "Not Found")

Returns the designation dynamically.


Example 3: XLOOKUP with Nested Calculation

Want to calculate bonus = Salary * 10% of the employee entered in H2?

=XLOOKUP(H2, B2:B11, E2:E11, 0) * 10%

5. INDEX + MATCH Combination

Before XLOOKUP, advanced users preferred INDEX and MATCH because they were more flexible than VLOOKUP.


Syntax:

=INDEX(return_range, MATCH(lookup_value, lookup_range, 0))

Example 1: Get Designation by Employee ID

=INDEX(D2:D11, MATCH("EMP005", A2:A11, 0))

Result: Marketing Head
MATCH finds the position of EMP005, and INDEX returns value from the same row in Designation column.


Example 2: Use Cell Reference for Flexibility

=INDEX(E2:E11, MATCH(H2, A2:A11, 0))

If H2 contains EMP008, result → 50000 (Salary).


Example 3: INDEX + MATCH for Two-Way Lookup

Suppose you have this table:

MetricJanFebMar
Sales120001500017000
Profit300040004200

If you want to find the Profit for Feb, use:

=INDEX(B2:D3, MATCH("Profit", A2:A3, 0), MATCH("Feb", B1:D1, 0))

Result: 4000

This is a two-dimensional lookup — finds row by “Profit” and column by “Feb”.


6. Real-Life Scenarios Using Lookup Functions

Let’s understand how these formulas help in practical, day-to-day data analysis.


Scenario 1: Salary Slip Generator

In a payroll dashboard:

  • Employee ID is entered in cell H2
  • You want to fetch Name, Designation, Department, and Salary automatically:
=XLOOKUP(H2, A2:A11, B2:B11, "Not Found")  → Name  
=XLOOKUP(H2, A2:A11, D2:D11, "Not Found")  → Designation  
=XLOOKUP(H2, A2:A11, C2:C11, "Not Found")  → Department  
=XLOOKUP(H2, A2:A11, E2:E11, "Not Found")  → Salary

This makes your salary slip creation or employee information retrieval automated.


Scenario 2: Sales Dashboard Linking

You have two sheets —
Sheet1: Product-wise sales
Sheet2: Product master with price and category

Using:

=VLOOKUP(A2, ProductMaster!A2:C100, 3, FALSE)

You can link product codes to categories or pricing details dynamically.


Scenario 3: Region-Wise Reporting

If you maintain regional data across multiple sheets:

=INDIRECT("'"&H2&"'!B2:B50")

can dynamically fetch values from the sheet name entered in H2.
This, combined with INDEX-MATCH or XLOOKUP, enables multi-region reports easily.


7. Comparing Lookup Functions

FunctionDirectionSupports Left LookupDynamic RangeSimplicityRecommended
VLOOKUPVertical❌ No❌ StaticEasyBeginners
HLOOKUPHorizontal❌ No❌ StaticEasyRarely used
XLOOKUPBoth✅ Yes✅ YesVery Easy✅ Modern & Preferred
INDEX + MATCHBoth✅ Yes✅ YesModerate✅ Advanced Users

8. Best Practices

✅ Always use absolute references ($A$2:$F$11) when copying formulas.
✅ Combine with IFERROR() for cleaner results.
✅ Prefer XLOOKUP for flexibility and performance.
✅ Use INDEX+MATCH when working with large datasets or older systems.
✅ Avoid sorted lookup unless you know your dataset is properly sorted.


Conclusion

Lookup functions are the core tools for data professionals using Zoho Sheets.
They help connect different tables, automate report generation, and simplify analysis — all without writing a single line of code.

From VLOOKUP to XLOOKUP and INDEX-MATCH, mastering these formulas will help you handle everything from MIS reporting to real-time dashboards efficiently.

In the next post, we’ll cover “Text & String Manipulation Functions in Zoho Sheets” — to clean, transform, and combine data smartly.

What’s Next?

In the next post, we’ll learn about the Advanced Functions in Zoho Sheets like CHOOSE, FILTER, QUERY, INDIRECT

Spread the love

Leave a Comment

Your email address will not be published. Required fields are marked *

Translate »
Scroll to Top