Gretzenbach es una comuna suiza del cantón de Soleura, situada en el distrito de Olten.