In your original code, you spawn monsters in the layout at a X position of 1500 pixels and a Y position of between 0 and 1024.
The X position was always 1500, which makes it "right" if your windows size is less than 1500 pixels wide.
In your case, you could use further expressions :
In the X field : choose(random((Monster.Width*2)*-1,(Monster.Width) *-1)), random(LayoutWidth+Monster.Width, LayoutWidth + Monster.Width*2))
This made it choose between two location.
One location is a random value between - Monster.Width (the width of your Monster instance * -1) and double its width.
So this is the left border of the screen, negative values.
The other location is past the Layout width (right of the screen/layout) + an interval between monster's width and monster's width *2