Frank, of BMC Racing, has a 25 second gap from second-placed Roman Kreuzinger of the Czech Republic, with Rui Costa a further 10 seconds back for Movistar.
But the day belonged to Sagan, who gave Cannondale victory on the 203.3km stage from Montreux to Meiringen in a time of 4:46.27 from defending champion Costa of Portugal.
It was a fine win from the Slovak, who broke away as part of a four-man move, along with Frank, Kreuziger and Costa before splitting away from the lead group on the descent from the day’s final categorised climb.
Sagan’s decisive move – with around 18km remaining of the stage – saw him thrive on the steep, wet descent to Meiringen as he and Costa created a gap from Kreuziger and Frank into the finish line.
Previous race leader Cameron Meyer of Orica-GreenEdge lost crucial time as he relinquished the overall lead to Frank.
Ryder Hesjedal continued his run of bad luck – the Garmin-Sharp rider was forced to withdraw from last month’s Giro d’Italia with illness – as he began the day in second place overall but crashed and was taken to hospital for an examination.
Michele Scarponi of Lampre-Merida was another rider to crash during the stage as Frank established a lead that he will seek to defend over the course of the final six days.
- Sports & Recreation
- Rui Costa