Sorry to bother you again but your formula in G5 works perfectly:-

IF(G5="","",IFERROR(IF(LEFT(G5)="*","*","")&INDEX($L$5:$L$8,MATCH(LEFT(SUBSTITUTE(G5,"*",""),FIND("v",SUBSTITUTE( G5 ,"*",""))-1)+0,$K$5:$K$8,0)),INDEX($L$5:$L$8,MATCH(MID(SUBSTITUTE($G5,"*",""),FIND("v",SUBSTITUTE(G5,"*",""))+1,2)+0,$K$5:$K$8,0))&IF(RIGHT(G5)="*","*","")))

but when I copy down to G6 and G7 like so, only changing the G5 to G6 & G7 etc:-

IF(G6="","",IFERROR(IF(LEFT(G6)="*","*","")&INDEX($L$5:$L$8,MATCH(LEFT(SUBSTITUTE(G6,"*",""),FIND("v", SUBSTITUTE( ** G5 ** ,"*",""))- 1)+0,$K$5:$K$8,0)),INDEX($L$5:$L$8,MATCH(MID(SUBSTITUTE($G6,"*",""),FIND("v",SUBSTITUTE(G6,"*",""))+1,2)+0,$K$5:$K$8,0))&IF(RIGHT(G6)="*","*","")))

It doesn’t work and gives the value error, what am I doing wrong? Regards