Ziyech has been out since the start of December after pulling up in the win against Leeds.
He was expected to be back for Christmas, but his recovery had been delayed.
Lampard revealed James had also picked up a hamstring strain in the Boxing Day defeat to Arsenal – although he was due to be rested against Aston Villa 48 hours later.
“I had some ideas to make changes anyway because we have a squad of people who are ready to play,” said the Chelsea manager after the 1-1 draw with Villa.
“I can’t complain about the two-day turnaround, which I did, and not use the squad to a degree.
“Reece James has got a small hamstring issue and I am not saying that’s why Azpi (Cesar Azpilicueta) played because I probably would have played him anyway.”
Chelsea XI (4-3-3): Mendy, Azpilicueta, Zouma, Thiago, Chilwell, Kovacic, Kante, Mount, Ziyech, Werner, Pulisic
This weekend get a £10 free bet with Betfair, when you bet £10 on a Same Game Multi on the Premier League.
Terms: Min £10 Same Game Multi bet on any EPL match this Fri – Sun. Free bet valid for 72 hours, awarded at bet settlement. Excludes cashed out bets. T&Cs apply.