Scale Rotated As If Not Rotated
If you haven't applied the rotation, you can use the local coordinates, either change to locale in the Transform Orientations dropdown, or hit S -&gt; Y -&gt; Y for scaling on the local Y axis (or X twice for X etc.)
If you have applied rotation then creating a new Transform Orientation will be required. Select the face on one end of your cylinder, then in the Transform Orientations dropdown click the + button. This will make a new coordinate system aligned with the selected face. Then scale as required.

But the easiest way for this particular problem would be to use Loop Tools addon. Select the verts on one end, right-click and choose LoopTools -&gt; Circle and like magic your verts with be a circle retaining the plane they are on and their median location!