Tigger,
I don't want to mess too much with your file, so I've put a new formula in only the first few rows of Column A and B; you'll want to drag it down to fill if it's what you want...
Column A has an array formula (confirmed with Ctrl+Shift+Enter):
=IFERROR(INDEX('Hazard Identification Checklist'!$A$2:$A$100,SMALL(IF('Hazard Identification Checklist'!$C$2:$C$100='Hazard Identification Checklist'!$C$1,ROW('Hazard Identification Checklist'!$C$2:$C$100)-1,""),ROWS(A$9:A9))),"")
Column B has an Index-Match formula.
=INDEX('Hazard Identification Checklist'!$D$2:$D$100,MATCH(A10,'Hazard Identification Checklist'!$A$2:$A$100,0))
I'd suggest that you avoid the VLOOKUP() when possible; it can really bog down your processing time the more you use it...
Is this the help you needed?