some problems here:
sheet a contains an imported list of data with:
column A: product name
column B: product code
column C: our reporting code
column D: headoffice reporting code
column E: headoffice relating subcode

I've written in the "normal"way the VLookup function which says look in range b2:e15000 and when found the code in column B, give me the code from D.
Strangely enough, on first sight everything looks fine but when I check some codes it is proven that vb gives other codes. I want to be absolutely certain.
How to deal with this?
Also on other sheets there are variable ranges. I insert two columns where some checks have to be done in order to sort them first. To fill these columns I use range filldown but sometimes it passses the range with 10 rows or so and in other cases it stops two rows before the range's end.
How to deal with this?
Finally to complete the whole reporting I made 8 or so subs. But it seems that sometimes the whole macro goes into a loop (partly). How to end the macro really?