Schachmann (Quick-Step Floors) outsprinted his breakaway partner Diego Rubio (Burgos-BH), to win the stage which was cut shortened from 194km to 117km due to heavy weather in the Pyrenees.
“On the profile, it might have looked like a sprinters’ stage, but in the end, it turned out to be a tough one," Schachmann said. "It was shorter than planned, but the weather made it really tough.
"Despite that, I went into the breakaway, and even though it was just me and Rubio there, we worked hard and gave everything on the roads to Torrefarrera.
"When the peloton began the chase, our gap went down and with 20 kilometres to go we had under two minutes, but we continued to do our job and pull hard."
New Zealand's Sam Bennett (LottoNL-Jumbo) finished third 18 seconds later while Valverde leads Team Sky's Egan Bernal by 16 seconds and Movistar team-mate Nairo Quintana by 26 seconds on the general classification.
"It wasn’t an easy day by any means," Valverde said. "The route profile was indeed the easiest this week, but it was so cold out there. There were points of the race when my Garmin was telling me it was 0ºC.
"Despite the route being shortened, there were times when the whole peloton was like ‘frozen’. That wear and tear was even more important than the crosswinds when those echelons were formed in the finale. People could barely stay on their bikes."
The final stage will take the peloton 154km on a loop around Barcelona before heading for the final eight laps around a hilly Montjuïc.
"Let's see, it is clear that 16 seconds is a lot or it can be very little," Valverde said. "Egan [Bernal] is very strong, I can feel him very close but my feelings are good and the team is very confident."
More to come.