In a televised address, he said travel from 26 European countries would be suspended for the next 30 days.
But he said the "strong but necessary" restrictions would not apply to the UK, where 460 cases of the virus have now been confirmed.
There are 1,135 confirmed cases of the virus across the US, with 38 deaths.
"To keep new cases from entering our shores, we will be suspending all travel from Europe," Mr Trump said from the Oval Office on Wednesday evening.
"The new rules will go into effect Friday at midnight," he added. The travel order does not apply to US citizens.
Mr Trump said the European Union had "failed to take the same precautions" as the US in fighting the virus.
A Presidential Proclamation, published shortly after Mr Trump's speech, specified that the ban applies to anyone who has been in the EU's Schengen border-free area within 14 days prior to their arrival in the US.
This implies that Ireland is excluded from the ban as it is not one of the 26 Schengen countries. Bulgaria, Croatia and Romania are also EU members without being part of the Schengen area.
Mr Trump spoke just hours after Italy - the worst affected country outside China - announced tough new restrictions on its citizens. It will close all shops except food stores and pharmacies as part of its nationwide lockdown.
He said the travel suspension would also "apply to the tremendous amount of trade and cargo" coming from Europe into the US. But he later tweeted to say that "trade will in no way be affected" by the new measures.
Mr Trump also announced plans to provide billions of dollars in loans to small businesses, and urged Congress to pass major tax relief measures in an attempt to stymie the effect of the coronavirus outbreak on the economy.
"We are marshalling the full power of the federal government and the private sector to protect the American people," he said.
Köhnə versiyamızdan xəbərləri izlə