Wycombe Wanderers substitute Gary Doherty scored a late equaliser to earn his side a point and deny promotion-chasing Rotherham a vital victory.

Joel Grant gave the hosts an early lead when he outpaced Millers' Dale Tonge to convert Dean Morgan's low delivery.

But Daniel Nardiello headed in Liam Ridehalgh's cross and volleyed home Ben Pringle's pass to put Rotherham ahead.

However, Doherty, playing for the first time since 3 November, made it 2-2 with a header from Sam Wood's corner.

Rotherham, who are now fifth and three points behind third-placed Port Vale, had a late chance to win it but Wycombe goalkeeper Jordan Archer saved Claude Davis's header.

VIEW FROM THE DRESSING ROOM

Rotherham United manager Steve Evans told BBC Radio Sheffield:

"For the first 20 minutes we were poor. We couldn't get in the game, we looked like we were still on the coach if I'm honest.

"We had a few stern words to say in the dressing room, pointed a few fingers but the reaction they gave us was tremendous.

"We got two great individual goals from (Daniel) Nardiello

"We'll take that late goal against us on the chin, we'll go forward and we'll bounce again."

Sorry, we were unable to load match stats, please try again.

Live Text Commentary

90:00 +4:08 Full time

Full Time The game is over, as the referee blows his whistle.

90:00 +3:02

Andy Warrington takes the direct free kick.

90:00 +3:02 Substitution

Substitution Ben Pringle goes off and Kieran Agard comes on.

90:00 +3:02

Liam Ridehalgh fouled by Gareth Ainsworth, the ref awards a free kick.

90:00 +2:20

Corner taken left-footed by Ben Pringle to the near post, comfortable save by Jordan Archer.

90:00 +1:09

Sam Wood challenges Daniel Kearns unfairly and gives away a free kick. Strike comes in from Ben Pringle from the free kick, save by Jordan Archer.

86:08 Substitution

Substitution Alex Revell goes off and Kayode Odejayi comes on.

84:58

Daniel Kearns challenges Sam Wood unfairly and gives away a free kick. Jordan Archer takes the direct free kick.

84:02 Substitution

Substitution Daniel Kearns comes on in place of Daniel Nardiello.

82:43

Unfair challenge on Ben Pringle by Gareth Ainsworth results in a free kick. Free kick taken by Andy Warrington.

81:11

Ben Pringle concedes a free kick for a foul on Gareth Ainsworth. Michael Harriman takes the direct free kick.

80:16

Assist on the goal came from Sam Wood.

80:16 Goal scored

Goal! - Gary Doherty - Wycombe 2 - 2 Rotherham Gary Doherty grabs a headed goal from close in. Wycombe 2-2 Rotherham.

79:02

Free kick awarded for a foul by Claude Davis on Sam Wood. Dean Morgan takes the free kick. Charles Dunne has a drilled shot. Blocked by Liam Ridehalgh. Corner taken by Sam Wood from the right by-line,

74:52

Free kick awarded for an unfair challenge on Claude Davis by Gary Doherty. Andy Warrington restarts play with the free kick.

74:25

Gareth Ainsworth fouled by Ben Pringle, the ref awards a free kick. Direct free kick taken by Josh Scowen.

73:37 Substitution

Substitution Gary Doherty is brought on as a substitute for Dave Winfield.

74:20

Inswinging corner taken by Sam Wood.

72:14

The ball is delivered by Gareth Ainsworth, Dale Tonge makes a clearance.

71:40

The ball is swung over by Alex Revell, clearance by Charles Dunne.

70:39 Substitution

Substitution (Wycombe) makes a substitution, with Gareth Ainsworth coming on for Bruno Andrade.

70:39

Effort on goal by Dean Morgan from inside the area goes harmlessly over the bar.

69:44

The offside flag is raised against Daniel Nardiello. Free kick taken by Jordan Archer.

65:50

Foul by Alex Revell on Charles Dunne, free kick awarded. Free kick taken by Jordan Archer.

65:10

Dean Morgan gives away a free kick for an unfair challenge on Dale Tonge. Andy Warrington takes the direct free kick.

63:26

The assist for the goal came from Ben Pringle.

63:26 Goal scored

Goal! - Daniel Nardiello - Wycombe 1 - 2 Rotherham Daniel Nardiello finds the net with a goal from the edge of the penalty box to the bottom right corner of the goal. Wycombe 1-2 Rotherham.

63:22

A cross is delivered by Ben Pringle,

62:54

Dave Winfield challenges Alex Revell unfairly and gives away a free kick. Direct free kick taken by Liam Ridehalgh.

61:43

Free kick awarded for an unfair challenge on Dean Morgan by Ben Pringle. Free kick taken by Josh Scowen.

61:05

Josh Scowen takes the free kick.

61:05 Booking

Booking Daniel Nardiello receives a caution for unsporting behaviour.

60:55

Free kick awarded for a foul by Daniel Nardiello on Bruno Andrade.

59:53

Daniel Nardiello fouled by Stuart Lewis, the ref awards a free kick. Direct free kick taken by Michael O'Connor.

57:22

Jo Kuffour is flagged offside by the assistant referee. Free kick taken by Liam Ridehalgh.

56:31

Free kick awarded for an unfair challenge on Charles Dunne by Alex Revell. Direct free kick taken by Jordan Archer.

52:21

Foul by Alex Revell on Michael Harriman, free kick awarded. Michael Harriman restarts play with the free kick.

51:35

Ben Pringle is flagged offside by the assistant referee. Jordan Archer restarts play with the free kick.

50:31

Michael O'Connor provided the assist for the goal.

50:31 Goal scored

Goal! - Daniel Nardiello - Wycombe 1 - 1 Rotherham Daniel Nardiello finds the net with a headed goal from inside the box. Wycombe 1-1 Rotherham.

48:40

Joel Grant produces a cross, clearance made by Liam Ridehalgh. Corner taken by Sam Wood, clearance by Claude Davis.

47:56

Unfair challenge on Josh Scowen by Lee Frecklington results in a free kick. Josh Scowen takes the direct free kick.

47:04

Dean Morgan concedes a free kick for a foul on Johnny Mullins. Free kick taken by Andy Warrington.

46:07

Stuart Lewis gives away a free kick for an unfair challenge on David Noble. Free kick taken by Andy Warrington.

45:36

Corner taken by Josh Scowen played to the near post, Claude Davis manages to make a clearance.

45:01

The match restarts for the second half.

45:00 +2:18 Half time

Half Time The ref blows to signal half-time.

45:00 +1:49

The ball is swung over by Ben Pringle, save made by Jordan Archer.

45:00 +0:51

A cross is delivered by Jo Kuffour, Claude Davis makes a clearance.

44:41

Unfair challenge on Stuart Lewis by Daniel Nardiello results in a free kick. Josh Scowen restarts play with the free kick.

43:43

Daniel Nardiello is caught offside. Jordan Archer takes the indirect free kick.

39:38

Sam Wood takes a inswinging corner from the right by-line to the near post, Dave Winfield produces a header from deep inside the six-yard box which goes wide of the right-hand post.

39:34

Bruno Andrade crosses the ball, clearance made by Johnny Mullins.

39:11

Bruno Andrade produces a cross, clearance made by Johnny Mullins.

38:24

Free kick awarded for an unfair challenge on Dean Morgan by Liam Ridehalgh. Free kick taken by Michael Harriman.

37:32

Centre by Liam Ridehalgh. Michael O'Connor takes a shot.

37:17

Centre by Michael O'Connor.

36:10

The assistant referee flags for offside against Lee Frecklington. Indirect free kick taken by Jordan Archer.

35:13

Ben Pringle produces a cross, clearance by Sam Wood.

31:20

Unfair challenge on Sam Wood by Daniel Nardiello results in a free kick. Sam Wood restarts play with the free kick.

30:16

Michael O'Connor challenges Sam Wood unfairly and gives away a free kick. Josh Scowen takes the direct free kick.

28:35

Andy Warrington takes the free kick.

28:35 Booking

Booking The referee cautions Stuart Lewis for unsporting behaviour.

28:19

Michael O'Connor fouled by Stuart Lewis, the ref awards a free kick.

27:32

Foul by Dean Morgan on Johnny Mullins, free kick awarded. Direct free kick taken by David Noble.

26:33

Free kick awarded for an unfair challenge on David Noble by Josh Scowen. Direct free kick taken by Andy Warrington.

24:27

Alex Revell fouled by Dave Winfield, the ref awards a free kick. Free kick taken by Michael O'Connor.

22:01

Effort on goal by David Noble from 25 yards. Save made by Jordan Archer.

21:54

The ball is sent over by Lee Frecklington, clearance made by Dave Winfield.

20:43 Substitution

Substitution Jo Kuffour joins the action as a substitute, replacing Matt McClure.

16:20

David Noble takes a inswinging corner from the left by-line to the near post, clearance made by Josh Scowen.

14:40

Corner taken by Sam Wood played to the near post, Liam Ridehalgh makes a clearance.

14:23

Stuart Lewis challenges David Noble unfairly and gives away a free kick. David Noble restarts play with the free kick.

10:05

Inswinging corner taken by Josh Scowen, clearance made by Claude Davis.

9:52

Sam Wood delivers the ball, clearance by Johnny Mullins.

8:08

Corner taken right-footed by Ben Pringle from the left by-line to the near post, clearance made by Dave Winfield.

7:13

Free kick awarded for an unfair challenge on David Noble by Michael Harriman. Johnny Mullins takes the free kick.

6:01 Goal scored

Goal! - Joel Grant - Wycombe 1 - 0 Rotherham Joel Grant finds the back of the net with a goal from inside the six-yard box to the top left corner of the goal. Wycombe 1-0 Rotherham.

3:16

Sam Wood crosses the ball, clearance by Johnny Mullins.

1:53

The ball is sent over by Joel Grant, clearance by Claude Davis.

0:02

Free kick awarded for an unfair challenge on Liam Ridehalgh by Bruno Andrade. Free kick taken by Andy Warrington.

0:00

The match has kicked off.

Live data and text provided by our data suppliers