Hi David
The way I would do it is to use a mirror of the userform picture in a worksheet.
It's very easy to set up and if you want to change the shapes at runtime you can easily do it in the mirror and update the userform picture.
This is how you can do it:
- in a worksheet insert an empty chartobject
- resize it to the dimensions of the userform
- draw your shapes in the chart object
- export the chart to a file
- import the file to the userform background (picture)
These are the basics.
You can hide the worksheet and use vba to make some or all of this automatic.
Remarks:
This way you can display a number of shapes anywhere in the userform.
An alternative is to insert an image control in the worksheet and import the picture into it.
There may be other solutions involving programming with the windows API.