Two goals by Mark Viduka and one from Henrik Larsson gave Celtic the victory although their win was marred by the sending-off of Johan Mjallby in the 85th minute for a second bookable offence.
The last big occasion at Cappielow attracted attention from afar with five members of the Essex Morton Supporters' Club flying north for a final look at the terraces when they were holding a sizeable crowd.
After an initial flurry from Morton the Celtic nerves were settled by Viduka's first goal for the club. The Australian striker was confronted by two defenders as he collected a long ball from Alan Stubbs, but broke free and fired a first-time shot into the top corner with the outside of his foot.
Morton took the game to the visitors for a while but could make little impression on the Celtic defence, and before the break the home goalkeeper, Ally Maxwell, had pushed away a Larsson shot and Craig Burley had shot wide for a third time.
From the restart Morton went in search of an equaliser and created a genuine opportunity in the 49th minute. Kevin Twaddle sent in a tempting cross for Kevin Thomas but his header was well saved. Steven Aitken then had a shot blocked at a corner, but just when Morton were settling a defensive mistake gave Celtic their second goal.
Larsson, who had failed to make much of an impression earlier, was left in the clear when a poor header by Paul Fenwick failed to reach Maxwell, allowing the Swede the chance to lift the ball over the goalkeeper and into the net.
Morton came close shortly afterwards when Harry Curran saw his close range effort blocked on the line, but with eight minutes remaining Viduka scored again after deflecting in a Larsson shot.
Celtic now face a semi-final tie against Ayr United or Dundee United.
Greenock Morton (4-4-2): Maxwell; Aitken, Fenwick, D Anderson, Archdeacon; Twaddle (Wright, 84), Curran, J Anderson, McPherson; Thomas, Matheson. Substitutes not used: Slaven, Blaikie.
Celtic (4-4-2): Gould; Boyd, Stubbs, Mjallby, Mahe (McKinlay, 4); Riseth, Burley, Lambert, Blinker; Viduka (Brattbakk, 87), Larsson; Substitute not used: Kerr.
Referee: K Clark (Paisley).