I have two layers to make an intersection. I use QGIS 2.18.22 and Vector - Geoprocessing Tools - Intersect - run is not working, because "Input layer A contains invalid geometries. Unable to complete intersection algorithm." Anyone having any idea how to fix it? Layers are here: https://uloz.to/tam/_BGkW3f7iUrDm
Upgrade your version to QGIS 3.2.
Then, in the toolbox (Menu processing -> Toolbox) you will find a tool called "fix geometries". Use this tool bevor making the intersection
In QGIS 2.18 you can use GRASS v.clean from the processing toolbox to fix invalid geometry.