HomeGoogle DocsSpreadsheetHow to Use Vlookup Importrange in Google Sheets (With Examples)

How to Use Vlookup Importrange in Google Sheets (With Examples)

The Vlookup Importrange combination in Google Sheets lets you search and import matching values from one spreadsheet to another.

If you already know how to use VLOOKUP and IMPORTRANGE, combining them is straightforward—but there are a few important tricks and performance tips you shouldn’t miss.

In this guide, you’ll learn:

  • How to use Vlookup Importrange in Google Sheets
  • How to apply multiple conditions
  • How to return multiple results
  • Faster alternatives using QUERY and LET

Quick Answer

To use Vlookup Importrange in Google Sheets:

=VLOOKUP(A2, IMPORTRANGE("URL", "Sheet1!A1:F"), 6, FALSE)
  • Import data using IMPORTRANGE
  • Wrap it inside VLOOKUP
  • Use FALSE for exact match

When to Use Vlookup Importrange in Google Sheets

Use Vlookup Importrange in Google Sheets when you need to:

  • Retrieve matching data from another spreadsheet
  • Keep data updated dynamically across multiple files
  • Perform lookups based on a unique identifier (like ID, email, or a combined key)
  • Quickly match and return values from a structured dataset

When Not to Use It

  • When you need to look up data to the left of the search column (use XLOOKUP instead)
  • When your formula uses multiple IMPORTRANGE calls, which can slow performance (use LET to optimize)
  • When you need more flexible filtering or SQL-like queries (use QUERY instead)

What is Vlookup Importrange in Google Sheets?

Vlookup Importrange in Google Sheets means using:

  • IMPORTRANGE → to pull data from another file
  • VLOOKUP → to search and return matching values

This allows you to look up data across different Google Sheets files dynamically.

Basic Example of Vlookup Importrange in Google Sheets

The following example shows how to use Vlookup Importrange in Google Sheets to search and return matching values from another spreadsheet.

Setup

We will use two files:

  • Source file: Sales
  • Destination file: Analysis

In the source file (Sheet1), the data is in columns A to F:

  • Column A: First Name
  • Column B: Last Name
  • Column C: Sales Item
  • Column D: Sales Qty
  • Column E: Unit Rate
  • Column F: Total Amount
Sample data used for Vlookup Importrange in Google Sheets example

In the destination file, the lookup values (names) are listed in A2:A.

Lookup Goal

Using Vlookup Importrange in Google Sheets, we will:

  • Search the name in cell A2 (destination file)
  • Match it with column A in the source file
  • Return the corresponding value from a specified column (for example, column F – Total Amount)

Result

This setup allows you to dynamically fetch matching data from another spreadsheet based on a lookup value.

Before using Vlookup Importrange in Google Sheets, you must first connect the source and destination files.

Step 1: Import Data

First, import the data from the source file into the destination file using the IMPORTRANGE function.

=IMPORTRANGE("URL", "Sheet1!A1:F")
  • Replace URL with the link to your source spreadsheet
  • Replace Sheet1 with your actual sheet name (if different)
  • Press Enter and click Allow Access when prompted

This step connects the two files and makes the source data available for the lookup formula.

Copying Google Sheets URL for use in IMPORTRANGE formula
Copying Google Sheets URL for use in IMPORTRANGE formula

Step 2: Apply Vlookup

Now, wrap the IMPORTRANGE formula with VLOOKUP:

=VLOOKUP(A2, 
  IMPORTRANGE("URL", "Sheet1!A1:F"), 
  6, FALSE
)

This formula:

  • Searches for the value in A2
  • Looks for a match in column A of the imported data
  • Returns the corresponding value from column 6 (column F)
  • Uses FALSE to ensure an exact match

Vlookup Importrange with Multiple Search Keys

If you have multiple lookup values:

=ARRAYFORMULA(IFERROR(VLOOKUP(A2:A, 
  IMPORTRANGE("URL", "Sheet1!A1:F"), 
  6, FALSE)))
Using VLOOKUP with imported data in Google Sheets to return matching values

Why This Formula Works

  • ARRAYFORMULA → applies Vlookup to multiple rows
  • A2:A → supports future entries automatically
  • IFERROR → removes #N/A errors

This is one of the most practical lookup use cases.

Vlookup Importrange with Multiple Criteria

Assume you have first names and last names in the destination file.

First name and last name columns used as criteria for Vlookup Importrange in Google Sheets

How can you use both columns to perform a lookup in the source file?

To use Vlookup Importrange in Google Sheets with multiple criteria, you need to:

  • Combine the search keys (first name + last name)
  • Combine the corresponding columns in the source data
  • Create a virtual lookup table

Formula

=ARRAYFORMULA(IFERROR(VLOOKUP(A2:A&B2:B, 
  {
  IMPORTRANGE("URL", "Sheet1!A2:A")&
  IMPORTRANGE("URL", "Sheet1!B2:B"),
  IMPORTRANGE("URL", "Sheet1!C2:F")
  }, 
  5, FALSE)))

Key Idea

  • Use & to combine first name and last name
  • Build a virtual lookup table using {}
  • Adjust the column index (here, 5) based on the new structure
Lookup table with combined first and last names in the first column
Lookup table with combined first and last names in the first column

In the previous example, we used multiple IMPORTRANGE functions to import specific sections of the table from the source sheet. However, multiple IMPORTRANGE calls can slow down your spreadsheet.

A better approach is to use the LET function. With LET, you can import the entire table once, assign it a name, and then use CHOOSECOLS to extract the required columns.

Optimized Formula

=ARRAYFORMULA(LET(
  sk, A2:A&B2:B,
  rg, IMPORTRANGE("URL", "Sheet1!A2:F"),
  VLOOKUP(sk, {CHOOSECOLS(rg, 1)&CHOOSECOLS(rg, 2), CHOOSECOLS(rg, {3, 4, 5, 6})}, 5, FALSE)
))

Benefits:

  • Uses IMPORTRANGE only once
  • Faster calculation
  • Cleaner structure

This is the best practice for Vlookup Importrange in Google Sheets today.

XLOOKUP Importrange Alternative

Unlike VLOOKUP, XLOOKUP uses separate lookup and result ranges, making it easier to combine with IMPORTRANGE.

Formula

=ARRAYFORMULA(LET(
  sk, A2:A&B2:B,
  rg, IMPORTRANGE("URL", "Sheet1!A2:F"),
  XLOOKUP(sk, CHOOSECOLS(rg, 1)&CHOOSECOLS(rg, 2), CHOOSECOLS(rg, 6))
))

Why Use This Approach?

  • No need to specify a column index
  • More flexible than VLOOKUP
  • Works well with LET for better performance

You can learn more about this combination in my detailed tutorial: XLOOKUP with Single IMPORTRANGE & LET in Google Sheets.

QUERY as an Alternative to Vlookup Importrange in Google Sheets

You can also use QUERY for the same purpose. If you want a detailed guide, check out my tutorial on How to Use Query with Importrange in Google Sheets.

Single Condition:

=QUERY(IMPORTRANGE("URL","Sheet1!A2:F"),
"SELECT Col6 WHERE Col1='"&A2&"'")
Using QUERY with IMPORTRANGE in Google Sheets for a single condition

Multiple Conditions:

=QUERY(IMPORTRANGE("URL","Sheet1!A2:F"),
"SELECT Col6 WHERE Col1='"&A2&"' AND Col2='"&B2&"'")
Using QUERY with IMPORTRANGE in Google Sheets with multiple conditions

When to use QUERY?

  • Easier to read
  • Better for filtering
  • Not ideal for large array outputs

Vlookup vs Query: Which is Better?

FeatureVlookup ImportrangeQuery Importrange
Ease of useMediumEasy
PerformanceBetter (with LET)Good
Multiple resultsExcellentLimited
FlexibilityHighHigh

Use Vlookup Importrange in Google Sheets when you need scalable, dynamic results.

Common Mistakes to Avoid

  • Not clicking Allow Access when using IMPORTRANGE
  • Using the wrong column index in VLOOKUP
  • Forgetting to set FALSE for exact match
  • Using multiple IMPORTRANGE functions unnecessarily, which can slow performance

Conclusion

The Vlookup Importrange in Google Sheets method is still one of the most powerful ways to combine data across files.

  • Use ARRAYFORMULA for multiple results
  • Use LET for better performance
  • Use QUERY for simpler conditions

If performance matters, always optimize your formulas—especially when working with large datasets.

Prashanth K V
Prashanth K V
Your Trusted Google Sheets and Excel Expert Prashanth K V is a Diamond Product Expert in Google Sheets, officially recognized by Google for his contributions to the Docs Editors Help Community and featured in the Google Product Experts Directory. Explore his blog to learn advanced formulas, automation tips, and problem-solving techniques to elevate your spreadsheet skills.

Top Discussions

More like this

How to Build a Road Trip Fuel Cost Splitter Formula in Google Sheets

Need a fair formula to split fuel costs among travelers on a long road...

Road Trip Fuel Cost Splitter in Google Sheets (Free Template)

When you go on a long road trip with friends, splitting fuel expenses fairly...

Savings Tracker Template in Google Sheets (Free Download)

Managing multiple savings goals can become difficult without a proper system to track your...

8 COMMENTS

  1. Hello,

    I am trying to use the QUERY + IMPORTRANGE formula.

    Here is the formula:

    =Query(
    IMPORTRANGE("1x0O6WEg-itX_0eGChEFhZAnrlN5cRDdvuyyc6rPt__Q", "'Payment Record'!A1:E"),
    "Select Col4 where Col2='"&Orders!C8&"' and Col3='"&B2&"'")

    Where Orders!C8 is a string from another sheet of the current workbook, and B2 is a date.

    The IMPORTRANGE table’s Col2 and Col3 columns are the same data type.

    The value it returned was the Col4 header value.

    I hope you will be able to assist.

  2. Hi, This is exactly all the pieces of information and experience I was looking for.

    I was stuck with "query(importrange(" as I needed an array result, which was impossible.

    Thank you very much for sharing your knowledge with simples explanations and step decomposition of the formulas.

  3. Hello,

    I’m trying to figure out how to import data from another sheet with a condition.

    I have used the regular Vlookup + Importrange and it worked beautifully when I didn’t need conditions. But now I want to add to it that I only want the data imported to the new table if on the original table the column D = “September”.

    Would you be able to help? I really appreciate it!

  4. Yes, I have the same problem… the reference sheet that I want to import info from is very large … 26 columns and over 30000 rows.

    =VLOOKUP(K3,IMPORTRANGE("url","Sheet 1!A:Z"),2,FALSE)

    and the error message is #ERROR! results too large.

  5. Hope you can assist, Is there a limit on the “range” to be imported with the VLookup.
    The range is A9:W7900, I get a #REF! error, if I reduce the range to say, A9:1500 it works fine.
    What am I missing?

LEAVE A REPLY

Please enter your comment!
Please enter your name here

This site uses Akismet to reduce spam. Learn how your comment data is processed.