The 34-year-old Majstorovic was preparing for Wednesday's friendly against Croatia in Zagreb.
"It was a situation where Anders Svensson was in a challenge with Zlatan [Ibrahimovic] and he fell over on Daniel's leg," Sweden coach Erik Hamren told reporters.
"It's painful for us but most of all for Daniel. He's had enough negatives. He's a great person to have in the group too, which makes it even more painful."
Celtic said Majstorovic would stay in Sweden for the immediate future and undergo an operation.
"Celtic's medical team will be in close liaison with the Swedish FA medical team to ensure that Daniel receives the best of care," they said in a statement on their website. "Unfortunately he will be out long-term."
Sweden face Ukraine, France and England in June's European Championship in Ukraine and Poland.
Get the best features, fun and footballing frolics straight to your inbox every week.
Thank you for signing up to Four Four Two. You will receive a verification email shortly.
There was a problem. Please refresh the page and try again.