Multiple IF ERROR in a single formula

Hello, I am trying to get a status to pull from 3 different worksheets depending on the Row ID (We have current items, past items, and future items to keep our sheets from being too full. I get an #UNPARSEABLE error. Please let me know what I'm doing wrong.

=IFERROR(VLOOKUP([Row ID]@row, {RANGE1}, 22, false),IFERROR (VLOOKUP([Row ID]@row, {RANGE21}, 24, false),(VLOOKUP([Row ID]@row, {RANGE3}, 22, false))))

Best,

Best Answer

  • Nick Korna
    Nick Korna ✭✭✭✭✭✭
    Answer ✓

    Hi @trey.bowman,

    Your IFERRORs need to be nested slightly differently:

    =IFERROR(IFERROR(VLOOKUP([Row ID]@row, {RANGE1}, 22, false),VLOOKUP([Row ID]@row, {RANGE21}, 24, false)),VLOOKUP([Row ID]@row, {RANGE3}, 22, false))

    You may want to add another IFERROR so you get a blank result if there is no result from the 3 sheets instead of an error (or something showing is there no result in which case put some text between the quote marks).

    =IFERROR(IFERROR(IFERROR(VLOOKUP([Row ID]@row, {RANGE1}, 22, false),VLOOKUP([Row ID]@row, {RANGE21}, 24, false)),VLOOKUP([Row ID]@row, {RANGE3}, 22, false)),"")

    I do agree it might be easier to use an INDEX function to do this rather than needing to go across so many rows.

    Hope this helps though, but if you've any problems/questions then just let us know!

Answers

  • BullandKhmer
    BullandKhmer ✭✭✭✭✭

    I'm pretty sure this is just a brackets issue so,

    =IFERROR(VLOOKUP([Row ID]@row, {RANGE1}, 22, false),IFERROR (VLOOKUP([Row ID]@row, {RANGE21}, 24, false),VLOOKUP([Row ID]@row, {RANGE3}, 22, false))))

    In my opinion you'd be better off using an index match function.


  • Unfortunately still #UNPARSEABLE I have only had bad luck with Index Match and always try to avoid it. I seem to always get the wrong data pulled in.

  • Nick Korna
    Nick Korna ✭✭✭✭✭✭
    Answer ✓

    Hi @trey.bowman,

    Your IFERRORs need to be nested slightly differently:

    =IFERROR(IFERROR(VLOOKUP([Row ID]@row, {RANGE1}, 22, false),VLOOKUP([Row ID]@row, {RANGE21}, 24, false)),VLOOKUP([Row ID]@row, {RANGE3}, 22, false))

    You may want to add another IFERROR so you get a blank result if there is no result from the 3 sheets instead of an error (or something showing is there no result in which case put some text between the quote marks).

    =IFERROR(IFERROR(IFERROR(VLOOKUP([Row ID]@row, {RANGE1}, 22, false),VLOOKUP([Row ID]@row, {RANGE21}, 24, false)),VLOOKUP([Row ID]@row, {RANGE3}, 22, false)),"")

    I do agree it might be easier to use an INDEX function to do this rather than needing to go across so many rows.

    Hope this helps though, but if you've any problems/questions then just let us know!

  • @Nick Korna - that worked perfectly. Hopefully, I can figure out index at some point where it works correctly but for now this will do. Thanks for the help!

Help Article Resources

Want to practice working with formulas directly in Smartsheet?

Check out the Formula Handbook template!