Steffen Seibert told reporters that Ms Merkel had suffered a fractured pelvis, "which makes it necessary for her to lie down a lot for three weeks".
Ms Merkel, 59, will mainly work from home during that period. She has cancelled a planned trip to Warsaw on Wednesday as well as a visit to Berlin by Luxembourg's new prime minister that had been scheduled for Thursday, he added.
"It goes without saying that as chancellor, she is capable of acting as well as communicating fully," Seibert said, adding that she would lead Wednesday's cabinet meeting, the first of 2014 for her new "grand coalition" government.
Ms Merkel was cross-country skiing in the southeastern Swiss region of Engadin, which boasts top ski resorts such as St Moritz, over the Christmas holidays when the accident occurred.
After she fell, the injury was thought initially to be just painful bruising, but after her return to Berlin, doctors Friday diagnosed a fracture in the pelvic area, Mr Seibert said.