Sharapova dominated the 59-minute semifinal and will play Ana Ivanovic in the final. Sharapova extended her winning streak on Stuttgart's indoor clay to 12 matches and is undefeated against Errani in five matches.
Ivanovic, looking for her third title of the year, beat Jelena Jankovic, 6-3, 7-5, in an all-Serb match.
Errani hit a big cross-court return that kissed the line to save the first match point. But Sharapova then hit a superb backhand winner down the line to close the match.
Sharapova is looking for her 30th career title. The Russian returned late last year after missing more than four months following shoulder surgery.
Ivanovic earned her third match point when Jankovic slipped and fell. A return by Jankovic that went wide gave Ivanovic another match point which she clinched when her opponent sent another return into the net.
Ivanovic, a former No. 1 like Jankovic and Sharapova, now has a 9-3 career edge over Jankovic.
Almagro slumped to his first loss in six meetings with Giraldo — a day after one of his biggest wins when he upset eight-time winner Nadal at the Real Club de Tenis.
“Yesterday's game doesn't serve as an excuse,” Almagro said. “Giraldo grazed perfection today, above all in the first set, and I couldn't find the answer.”
The unseeded Giraldo will be playing for his first career title on Sunday after he saved six of seven break points and finished the match with an emphatic ace.
Earlier, Nishikori's faster movement overcame Gulbis' big serve.
Down a set, ninth-seeded Gulbis saved seven break points in the second before finally ceding his serve and losing the match. Nishikori will be seeking his second title of the season and fifth in his career.