I believe that to create controls on a form you must have the form open in design view. You can do this from code, but it would be a little cumbersome while someone is using the form.
One alternate approach you might take is at design time put a pile of hidden lines on your form, and then you can set their .top, .left, .height, and .visible properties as required.