The incidents took place about 30 kilometres apart, north of the Swiss capital Bern, and rescue operations are still ongoing.
"There are injuries in both trains," a Bern cantonal police spokeswoman told AFP.
The first incident happened in the lakeside village of Luscherz, northwest of the capital Bern, at around 4:30 pm (1430 GMT), police said. The train was travelling between Luscherz and Bienne.
"A train derailed. The rear part of the train fell on the right side," a Bern cantonal police spokeswoman told AFP.
"There are several injured," she said, without being able to give more details on the condition of those involved.
"Rescue interventions -- police, ambulance and firefighters -- are still in progress," she added.
Police do not yet know why the train derailed.
Regional rail operator Aare Seeland Mobil said that services were cancelled on the line due to "a derailment caused by a storm", with the duration of the disruption "unknown".