The killer is among the dead, police and prosecutors are reported as saying.
Shooting broke out in the canteen at the Kronospan wood processing plant in the town of Menznau at around 09:00.
Police and rescue services are at the scene and the entire area is currently sealed off.
“The workers were eating a snack in the cafeteria during the morning, and there was a massacre,” said a man quoted by the Swiss news website 20minutes, who had phoned the factory to check on the welfare of his father.
An emergency telephone line had been set up for families of the factory’s employees.
“There were three dead and seven injured, some of them seriously injured,” prosecutors’ spokesman Simon Kopp told Swiss newspaper Blick.
Switzerland has one of the highest rates of gun ownership in the world, but such gun attacks are relatively rare.
All healthy Swiss men aged between 18 and 34 are obliged to do military service and all are issued with assault rifles or pistols which they are supposed to keep at home.
Until recently, many kept their weapons even after completing their military service – though rules on this have recently been tightened.
According to the Geneva-based Small Arms Survey, Switzerland ranks third in terms of gun ownership, behind the United States and Yemen.
Street gun violence is very rare in Switzerland.
However, there are more domestic homicides and suicides with a firearm in Switzerland than virtually anywhere else in Europe except Finland.
hkWtHUlapFEThe US House Ethics Committee has voted to release its report on former Republican Representative…
ABC News has agreed to pay $15 million to President-elect Donald Trump to settle a…
South Korea’s parliament has voted to impeach President Yoon Suk Yeol over his failed attempt…
Israeli war planes have carried out more than 100 air strikes in Syria on December…
President-elect Donald Trump has threatened to impose 100% tariffs on the BRICS countries if they…
Syrian troops have withdrawn from the city of Aleppo following an offensive by rebels opposed…