Hi,
I have another long formula array.
A1 notation style:
=IF($C2="New Record","",IFERROR(IF($H2<>"",$G2,IFERROR(IF($M2="","",IF(MAX(IF($A3:INDEX($A3:$A$17992,MATCH(9.99999999999999E+307,$M3:$M$17992))=$A2,$M3:INDEX($M3:$M$17992,MATCH(9.99999999999999E+307,$M3:$M$17992))))=0,INDEX($G3:$G$17992,MATCH(1,("New Record"=$C3:$C$17992)*($A2=$A3:$A$17992),0)),MAX(IF($A3:INDEX($A3:$A$17992,MATCH(9.99999999999999E+307,$M3:$M$17992))=$A2,$M3:INDEX($M3:$M$17992,MATCH(9.99999999999999E+307,$M3:$M$17992)))))),$G2)),$G2))
I broke them down to become 4 parts :-
When I run the macro, I have no error but in the cell, it came out like this:-
=IF(RC3="New Record","",IFERROR(IF(RC8<>"",RC7,IFERROR(IF(RC13="","",IF(MAX(IF($A3:INDEX($A3:$A$5,MATCH(9.99999999999999E+307,$M3:$M$5))=$A2,$M3:INDEX($M3:$M$5,MATCH(9.99999999999999E+307,$M3:$M$5))))=0,INDEX($G3:$G$5,MATCH(1,("New Record"=$C3:$C$5)*($A2=$A3:$A$5),0)),ZZZZZ)),RC7)),RC7))
I have tried to change the brackets, but all to no avail. All my trials will returned error.
Please help to correct my code.
Thanks in advance.
DZ
I have another long formula array.
A1 notation style:
=IF($C2="New Record","",IFERROR(IF($H2<>"",$G2,IFERROR(IF($M2="","",IF(MAX(IF($A3:INDEX($A3:$A$17992,MATCH(9.99999999999999E+307,$M3:$M$17992))=$A2,$M3:INDEX($M3:$M$17992,MATCH(9.99999999999999E+307,$M3:$M$17992))))=0,INDEX($G3:$G$17992,MATCH(1,("New Record"=$C3:$C$17992)*($A2=$A3:$A$17992),0)),MAX(IF($A3:INDEX($A3:$A$17992,MATCH(9.99999999999999E+307,$M3:$M$17992))=$A2,$M3:INDEX($M3:$M$17992,MATCH(9.99999999999999E+307,$M3:$M$17992)))))),$G2)),$G2))
I broke them down to become 4 parts :-
Code:
[COLOR=#141414][FONT=Verdana] FPart1 = "=IF(RC3=""New Record"","""",IFERROR(IF(RC8<>"""",RC7,IFERROR(IF(RC13="""","""",IF(XXXXX,YYYYY,ZZZZZ)),RC7)),RC7))"[/FONT][/COLOR]
[COLOR=#141414][FONT=Verdana] FPart2 = "MAX(IF(R[1]C1:INDEX(R[1]C1:R5C1,MATCH(9.99999999999999E+307,R[1]C13:R5C13))=RC1,R[1]C13:INDEX(R[1]C13:R5C13,MATCH(9.99999999999999E+307,R[1]C13:R5C13))))=0"[/FONT][/COLOR]
[COLOR=#141414][FONT=Verdana] FPart3 = "INDEX(R[1]C7:R5C7,MATCH(1,(""New Record""=R[1]C3:R5C3)*(RC1=R[1]C1:R5C1),0))"[/FONT][/COLOR]
[COLOR=#141414][FONT=Verdana] FPart4 = "MAX(IF(R[1]C1:INDEX(R[1]C1:R5C1,MATCH(9.99999999999999E+307,R[1]C13:R5C13))=RC1,R[1]C13:INDEX(R[1]C13:R5C13,MATCH(9.99999999999999E+307,R[1]C13:R5C13))))))"[/FONT][/COLOR]
[COLOR=#141414][FONT=Verdana]Application.ReferenceStyle = xlR1C1[/FONT][/COLOR]
[COLOR=#141414][FONT=Verdana]With ActiveSheet.Range("L2")[/FONT][/COLOR]
[COLOR=#141414][FONT=Verdana].FormulaArray = FPart1[/FONT][/COLOR]
[COLOR=#141414][FONT=Verdana].Replace "XXXXX", FPart2, lookat:=xlPart[/FONT][/COLOR]
[COLOR=#141414][FONT=Verdana].Replace "YYYYY", FPart3, lookat:=xlPart[/FONT][/COLOR]
[COLOR=#141414][FONT=Verdana].Replace "ZZZZZ))))", FPart4, lookat:=xlPart[/FONT][/COLOR]
[COLOR=#141414][FONT=Verdana]End With[/FONT][/COLOR]
[COLOR=#141414][FONT=Verdana]
[/FONT][/COLOR]
[COLOR=#141414][FONT=Verdana]Application.ReferenceStyle = xlA1[/FONT][/COLOR]
[COLOR=#141414][FONT=Verdana]Selection.AutoFill Destination:=Range("L2:L5")[/FONT][/COLOR]
[COLOR=#141414][FONT=Verdana]Range("L2:L5").Select[/FONT][/COLOR]
[COLOR=#141414][FONT=Verdana]Range("L2").Select[/FONT][/COLOR]
[COLOR=#141414][FONT=Verdana]End Sub[/FONT][/COLOR]
When I run the macro, I have no error but in the cell, it came out like this:-
=IF(RC3="New Record","",IFERROR(IF(RC8<>"",RC7,IFERROR(IF(RC13="","",IF(MAX(IF($A3:INDEX($A3:$A$5,MATCH(9.99999999999999E+307,$M3:$M$5))=$A2,$M3:INDEX($M3:$M$5,MATCH(9.99999999999999E+307,$M3:$M$5))))=0,INDEX($G3:$G$5,MATCH(1,("New Record"=$C3:$C$5)*($A2=$A3:$A$5),0)),ZZZZZ)),RC7)),RC7))
I have tried to change the brackets, but all to no avail. All my trials will returned error.
Please help to correct my code.
Thanks in advance.
DZ