Why does sodium chloride have no smell?

when you are smelling something tiny particles of the substance have become gaseous and have entered your nose to be detected. In order for this to happen the intermolecular forces holding the molecules of that substance together must be weak.

This makes the substance volatile. Molecular compounds fit this since they have very weak forces of attraction between their molecules. Ionic compounds on the other hand have comparatively very strong intermolecular forces that hold them together thus not allowing them to escape in gaseous form to be smelled.