Mirror multiple objects

I recently got problems when mirroring multiple objects: I tried so scale them -1 around the 3d cursor and one axis but some objects get their position mirrored but not the mesh. I tried to parent all Objects to an empty but after unparenting them (even with keep track) they disappear (get very small, scale 0)
This is really annoying. Is there a solution to miror multiple objects? Why do some object work while others don’t?

How about just using mirror. Select the object(s) press Shift-D and enter to duplicate them. Press Ctrl-M to mirror, choose the axis like X, and press Enter. Note, the mirror happens around the pivot point, so you may want to change your pivot point to 3D cursor and make sure the cursor is centered (Shift-C) before you mirror.