Trailing 2-0 early in the first period, the Canucks launched a comeback with Ryan Kesler's power-play goal 8:48 into the game and Sedin got the equalizer midway through the middle frame.
After David Moss put the Flames up 3-2 only a minute later, the Canucks iced the game with two quick tallies by Alexandre Burrows and Sedin, who notched his 37th goal on a power play.
Sedin added an assist, boosting his league-leading scoring total to 89 points, and Roberto Luongo turned aside 20-of-23 shots as the Canucks swept a five-game road trip and improved to an NHL-best 99 points.
Mikael Backlund and Matt Stajan scored and Miikka Kirpusoff made 28 saves for Calgary, which kept a tenuous hold on the eighth and final Western Conference playoff spot.
Exploding whale video goes viral on Internet
Campus cop fatally shoots Texas student during traffic stop