The rapid spread of the winter vomiting virus shows no signs of slowing and is causing chaos throughout the NHS. More than 100 wards were closed to new admissions yesterday and routine surgery was cancelled as hospitals struggled to curb the spread of the norovirus.

More than 100,000 people a week are going down with the highly contagious bug, which causes vomiting and diarrhoea lasting up to three days, leading to widespread absence from workplaces and schools.

The Health Protection Agency said the peak season for the norovirus began a month earlier than usual, in December, and the number of cases was at a five-year high. A spokesman added: "This is the highest year since 2002 but we are not overly concerned. Every year we have ward closures and people off sick. The effects are in line with previous years."

Figures on the HPA website show the south-west of England is the worst affected region, with laboratory reports of norovirus running at two to three times the rate in other parts of the country. However, the HPA claimed this was a "reporting artefact" because Bristol was a centre for research into the virus and this might have encouraged more reporting in the city.

Doctors are advising people who contract the bug to stay at home for two days after their symptoms have subsided to reduce the risk of infection. The virus is spread through droplets in the air and via the hands. Soap and water is required to shift it and the alcohol gels provided in hospital wards are not sufficient.

Some hospitals have banned visitors, except in emergencies, and begun interviewing new patients to check whether they have been in contact with someone infected.

The 650-bed Bath Royal United Hospital, which has closed seven wards, placed an automated message on its switchboard yesterday asking visitors to stay away. A spokeswoman said: "The Bristol hospitals were badly affected before Christmas and now it seems to be our turn. It is a moving picture we reopen one ward only to have to close another.

"Visitors are only being allowed in exceptional circumstances for patients who are critically or terminally ill. I think people are respecting it the corridors do feel quieter.

"We want to ask for public support. Visitors may have been in contact with someone infected and bring the virus into the hospital."

The Royal Liverpool and Broadgreen University Hospitals NHS Trust, which has closed 10 beds in seven wards, said it had introduced a 60-second interview for all patients to spot those who might be infected. Diane Wake, the trust's director of infection control, said: "This means anyone with the virus can be moved immediately into an isolation bed which will help reduce the likelihood of transmission."

The Royal College of GPs said the virus was not usually serious, except for the elderly or very young who might become severely dehydrated by diarrhoea triggered by the illness. In contrast, seasonal winter flu claims about 4,000 lives a year, mainly among the elderly. This year, flu rates are lower than normal. A spokeswoman for the college said: "Norovirus infection is not usually life-threatening. It is unpleasant but after 48 hours you should be all right."

Where the virus has struck

* Leeds Teaching Hospitals three wards closed to new admissions

* Bath Royal United Hospitals seven wards closed

* Royal Cornwall Hospitals two wards closed

* Addenbrooke's Hospital, Cambridge three wards closed

* Royal Oldham Hospital 26 beds closed across 11 wards

* Llandough Hospital, Wales two wards closed

* University Hospital of Wales one ward closed

* Southampton General Hospital three wards closed

* Southmead Hospital, Bristol two wards closed

* Bristol Royal Infirmary one ward closed

* Royal Devon and Exeter Hospital one ward closed

* Queen Alexandra Hospital, Portsmouth two wards closed

* Lurgan Hospital, Co Armagh, Northern Ireland one ward closed

* York Hospital three wards closed

* Musgrove Park Hospital, Somerset three wards closed

* William Harvey Hospital, Ashford, Kent two wards closed

* Eastbourne Hospital one ward closed