<<Convert Excel Spreadsheets to Web Pages | Trading Software That Operates Within Excel | Convert Excel, Access & Other Databases | Merge Excel Files>>
Ozgrid, Experts in Microsoft Excel Spreadsheets

2 Criteria VLOOKUP In Excel

TRY OUT: Smart-VBA | Code-VBA | Analyzer-XL | Downloader-XL | Trader-XL| More Free Downloads.. Best Value: Finance Templates Bundle

Back to: Excel Custom Function/Formulas

SEE ALSO: VLOOKUP |Vlookup Across Worksheets | 5 Condition Vlookup |4 Condition Vlookup | 3 Condition Vlookup |2 Condition Vlookup | How to stop the #N/A! error | Lookup Any Occurrence in Any Table Column || Hlookup Formula ||Left Lookup in Excel ||Excel Lookup Functions | Multi-Table Lookup

This Custom Function  can use the 1st 2 Columns of a table as matching criteria and return the nth column row to the right of the matching row range.

Function Two_Con_Vlookup(Table_Range As Range, Return_Col As Long, Col1_Fnd, Col2_Fnd)''EXCEL 2003 OR ABOVE''WRITTEN BY OZGRID.COMDim rCheck As Range, bFound As Boolean, lLoop As Long        On Error Resume Next    Set rCheck = Table_Range.Columns(1).Cells(1, 1)    With WorksheetFunction        For lLoop = 1 To .CountIf(Table_Range.Columns(1), Col1_Fnd)           Set rCheck = Table_Range.Columns(1).Find(Col1_Fnd, rCheck, xlValues, xlWhole, xlNext, xlRows, False)           If UCase(rCheck(1, 2)) = UCase(Col2_Fnd) Then                bFound = True                Exit For            End If        Next lLoop    End With    If bFound = True Then        Two_Con_Vlookup = rCheck(1, Return_Col)    Else     Two_Con_Vlookup = "#N/A"    End IfEnd Function

OR

Function Two_Con_Vlookup(Table_Range As Range, Return_Col As Long, Col1_Fnd, Col2_Fnd)''PRE EXCEL 2003''WRITTEN BY OZGRID.COMDim rCheck As Range, bFound As Boolean, lLoop As Long, lRow As Long        On Error Resume Next    Set rCheck = Table_Range.Columns(1).Cells(1, 1)    With WorksheetFunction        For lLoop = 1 To .CountIf(Table_Range.Columns(1), Col1_Fnd)            lRow = .Match(Col1_Fnd, Table_Range.Columns(1).Range("A" & lRow + 1 & ":A65536"), 0) + lRow            Set rCheck = Table_Range.Columns(1).Range("A" & lRow)            If UCase(rCheck(1, 2)) = UCase(Col2_Fnd) Then                bFound = True                Exit For            End If        Next lLoop    End With    If bFound = True Then        Two_Con_Vlookup = rCheck(1, Return_Col)    Else     Two_Con_Vlookup = "#N/A"    End IfEnd Function

Use like;
=Two_Con_Vlookup($A$1:$H$20,6,"Apr",4)
in any cell other than $A$1:$H$20

Where $A$1:$H$20 is the table range

6 is the nth column to return the matching row from.

"Apr" and 4 are the 2 conditions to match in the 1st 2 Columns

Excel Dashboard Reports & Excel Dashboard Charts 50% Off Become an ExcelUser Affiliate & Earn Money

Special! Free Choice of Complete Excel Training Course OR Excel Add-ins Collection on all purchases totaling over $64.00. ALLpurchases totaling over $150.00 gets you BOTH! Purchases MUST be made via this site. Send payment proof to [email protected] 31 days after purchase date.



Instant Download and Money Back Guarantee on Most Software

Try out:Analyzer XL |Downloader XL |Smart VBA |Trader XL Pro (best value) |ConsoXL | MergeXL | O2OLAP for Excel | MORE>>

Excel Trader PackageTechnical Analysis in Excel With $139.00 of FREE software!

Microsoft � and Microsoft Excel � are registered trademarks of Microsoft Corporation. OzGrid is in no way associated with Microsoft

Some of our more popular products are below...
Convert Excel Spreadsheets To Webpages | Trading In Excel | Construction Estimators | Finance Templates & Add-ins Bundle | Code-VBA | Smart-VBA | Print-VBA | Excel Data Manipulation & Analysis | Convert MS Office Applications To...... | Analyzer Excel | Downloader Excel | MSSQL Migration Toolkit | Monte Carlo Add-in | Excel Costing Templates