Straighten/align a selection of faces to another face using the pivot alignement

I recomend you using the mesh align plus addon. Also the BS Modify pivot addon could be useful at some points for you

Edit: I relaized that wasnt’t exactly what you asked, but those tools are quite useful, as @Way has said I would also use the active vertex, much quicker than using the 3d cursor.

If you don’t need keeping some vertices of the face you want to align with, you can also align the viewport to face with shift+7 and then with the looptools addon flatten the selected faces.