Thanks for the solution

I totally misunderstood what was happening, I thought I could use my form2 as an object, but it isn't an object, it's a 'blue print' of what I want my form to look like so i have to first create an instance of it by using;

dim F2 as form2
F2.showdialog

while I was trying to use it directly with things like;

form2.showdialog

You can't use any form you create yourself, but you can create an instance of it and use that.

Nice how something can seem so 100% logical after some help