Index match with multiple returns with vba

kwdennis

New Member
Joined
Jun 6, 2019
Messages
15
Cannot seem to get this to work once I start putting it into multiple return setup with in vba works fine in excel

VBA Code:
Public Sub TestMe()
    'Range("G1").FormulaArray = "=INDEX(A2:A6,MATCH(F1,B2:B6,0))" ' This works
    'Range("G2").FormulaArray = "=IF(ISERROR(INDEX($A$2:$A$6,SMALL(IF($B$2:$B$6=$F$1,ROW($A$2:$A$6)),ROW(1:1)),1)),"",INDEX($A$2:$A$6,SMALL(IF($B$2:$B$6=$F$1,ROW($A$2:$A$6)),ROW(1:1)),1))" ' This gives me a 1004 Error
End Sub
 

Excel Facts

Excel Can Read to You
Customize Quick Access Toolbar. From All Commands, add Speak Cells or Speak Cells on Enter to QAT. Select cells. Press Speak Cells.
You need to double up the quotes inside the formula like
VBA Code:
    Range("G2").FormulaArray = "=IF(ISERROR(INDEX($A$2:$A$6,SMALL(IF($B$2:$B$6=$F$1,ROW($A$2:$A$6)),ROW(1:1)),1)),"""",INDEX($A$2:$A$6,SMALL(IF($B$2:$B$6=$F$1,ROW($A$2:$A$6)),ROW(1:1)),1))" ' This gives me a 1004 Error
 
Upvote 0
Thanks,

The smallest differences between excel formula and vba formulas sometimes

Is there a more efficient way to handle this since it only returns the one value per row(1:1)

perhaps a case statement since F1 will be the value checked and it be a drop down list to check

or a case and countif and return all the matching values from single code line setup

VBA Code:
Public Sub TestMe()
      
     Range("G2").FormulaArray= "=IF(ISERROR(INDEX($A$1:$A$35,SMALL(IF($B$1:$B$35=$F$1,ROW($B$1:$B$35)),ROW(1:1)),1)),"""",INDEX($A$1:$A$35,SMALL(IF($B$1:$B$35=$F$1,ROW($B$1:$B$35)),ROW(1:1)),1))"

  Range("G3").FormulaArray=  "=IF(ISERROR(INDEX($A$1:$A$35,SMALL(IF($B$1:$B$35=$F$1,ROW($B$1:$B$35)),ROW(2:2)),1)),"""",INDEX($A$1:$A$35,SMALL(IF($B$1:$B$35=$F$1,ROW($B$1:$B$35)),ROW(2:2)),1))"

Range("G4").FormulaArray=  "=IF(ISERROR(INDEX($A$1:$A$35,SMALL(IF($B$1:$B$35=$F$1,ROW($B$1:$B$35)),ROW(3:3)),1)),"""",INDEX($A$1:$A$35,SMALL(IF($B$1:$B$35=$F$1,ROW($B$1:$B$35)),ROW(3:3)),1))"

End Sub
 
Upvote 0
That is a totally different question & so needs a new thread. Thanks.
 
Upvote 0

Forum statistics

Threads
1,214,596
Messages
6,120,438
Members
448,966
Latest member
DannyC96

We've detected that you are using an adblocker.

We have a great community of people providing Excel help here, but the hosting costs are enormous. You can help keep this site running by allowing ads on MrExcel.com.
Allow Ads at MrExcel

Which adblocker are you using?

Disable AdBlock

Follow these easy steps to disable AdBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the icon in the browser’s toolbar.
2)Click on the "Pause on this site" option.
Go back

Disable AdBlock Plus

Follow these easy steps to disable AdBlock Plus

1)Click on the icon in the browser’s toolbar.
2)Click on the toggle to disable it for "mrexcel.com".
Go back

Disable uBlock Origin

Follow these easy steps to disable uBlock Origin

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back

Disable uBlock

Follow these easy steps to disable uBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back
Back
Top