"Perhaps you could have one button just for selecting the block. Like in the make BLOCK dialog, you select entities to make the block with, then other controls on the form allow you to do things with the the entities."
It's a good solution for the problem, but in my case not perfect because there are allready lots of buttons, it doesn't increase the 'easy to use for the user' (seems like other people are gonna use it).
But anyhow i've been able to change the form a little bit and make it in such a way that you only can click the first button, in this sub the (private) blockreference gets defined, and paste all the other code in the third button after callin sub1. so in this case it's solved (but you do have same code twice, once with defining and once without) which makes me very happy. I didn't know about the private declaration so thanks a lot for our answer, i think the userform is ready now and can be tested by others.
But still in the future there might be a situation in which the above isn't possible. for example when you have 3 subs in which the block needs to be selected, and the fourth sub does them all together. and for that case i'm still wondering if there isn't an better way to do this (without extra buttons). Isn't it possible somehow to pass trough a blockreference (or other variable) to an other sub, but when not passed through (if blockdefinition is empty then), definining it in the sub itself?????? I've tried to do it by "sub(blocka as blockreference)" but this gives an "procedure declaration does not match description of event or procedure having same name".
Any possible options are welcome.