Go Back

Excel INDIRECT function

The INDIRECT function in Excel offers a great way to extract references from a string of text. The greatest advantage of INDIRECT is the reference is unchanged even if we add new columns. We can add as many rows and columns needed in the worksheet and it will not affect the reference at all. In this tutorial, we will learn how to use the INDIRECT function in Excel.

Figure 1. Example of How to Use the Indirect Function in Excel


=INDIRECT (ref_text, [a1])


  • ref_text – This argument is required. It is the reference of a cell provided as text.
  • [a1] – This argument is optional. It is the type of reference. It is a boolean value. The default is A1 which is TRUE. FALSE refers to R1C1 style reference.


The INDIRECT function returns a reference from a string of text. It takes the text and converts it to a valid reference of a cell. It returns the value of the cell specified by the text. The greatest advantage of INDIRECT is it will not change the reference even if we add new columns and rows.

Setting up Data

The following example uses a fruit sales database for the first quarter of 2018. We have three worksheets Jan, Feb and Mar containing the sales data.

Figure 2. The Data Set

To find out the sales in the sheet Summary, we need to

  • Select the cell B2,
  • Assign the formula =INDIRECT(A2&”!B1”) to the formula bar of B2.
  • Press Enter.

Figure 3. Applying the Data

  • Drag the formula from cells B2 to B4.

This will show the sales information in column B .


  • Excel does not change the reference created by INDIRECT even if we insert or delete cells, rows, or columns.
  • Excel evaluates references created by INDIRECT in real time. The value of the reference is displayed.
  • We need to have the workbook opened when ref_text refers to an external workbook.

Most of the time, the problem you will need to solve will be more complex than a simple application of a formula or function. If you want to save hours of research and frustration, try our live Excelchat service! Our Excel Experts are available 24/7 to answer any Excel question you may have. We guarantee a connection within 30 seconds and a customized solution within 20 minutes.

Did this post not answer your question? Get a solution from connecting with the expert.

Another blog reader asked this question today on Excelchat:
Here are some problems that our users have asked and received explanations on

indirect broke indirect broke indirect broke
Solved by O. Y. in 15 mins
I need explanation with the INDIRECT formula below...=IF(ISERROR(SUMIFS(INDIRECT("'"&H$6&"'!"&"$G:$G"),INDIRECT("'"&H$6&"'!"&"$R:$R"),$A39,INDIRECT("'"&H$6&"'!"&"$F:$F"),"<>52711",INDIRECT("'"&H$6&"'!"&"$C:$C"),10)),0,SUMIFS(INDIRECT("'"&H$6&"'!"&"$G:$G"),INDIRECT("'"&H$6&"'!"&"$R:$R"),$A39,INDIRECT("'"&H$6&"'!"&"$F:$F"),"<>52711",INDIRECT("'"&H$6&"'!"&"$C:$C"),10))+IF(ISERROR(SUMIFS(INDIRECT("'"&H$4&"'!"&"$A$30:$EO$30"),INDIRECT("'"&H$4&"'!"&"$A$4:$EO$4"),H$5,INDIRECT("'"&H$4&"'!"&"$A$5:$EO$5"),$A39)),0,SUMIFS(INDIRECT("'"&H$4&"'!"&"$A$30:$EO$30"),INDIRECT("'"&H$4&"'!"&"$A$4:$EO$4"),H$5,INDIRECT("'"&H$4&"'!"&"$A$5:$EO$5"),$A39))+IF(ISERROR(SUMIF(INDIRECT("'"&H$6&" "&$A$31&"'!"&"H:H"),$A39,(INDIRECT("'"&H$6&" "&$A$31&"'!"&"I:I")))),0,SUMIF(INDIRECT("'"&H$6&" "&$A$31&"'!"&"H:H"),$A39,(INDIRECT("'"&H$6&" "&$A$31&"'!"&"I:I"))))
Solved by C. S. in 28 mins
I need explanation with the INDIRECT formula below...=IF(ISERROR(SUMIFS(INDIRECT("'"&H$6&"'!"&"$G:$G"),INDIRECT("'"&H$6&"'!"&"$R:$R"),$A39,INDIRECT("'"&H$6&"'!"&"$F:$F"),"<>52711",INDIRECT("'"&H$6&"'!"&"$C:$C"),10)),0,SUMIFS(INDIRECT("'"&H$6&"'!"&"$G:$G"),INDIRECT("'"&H$6&"'!"&"$R:$R"),$A39,INDIRECT("'"&H$6&"'!"&"$F:$F"),"
Solved by S. J. in 27 mins

Leave a Comment