A cool change has swept across Melbourne, sending the mercury sliding 8 degrees in 15 minutes as fierce winds of up to 100km/h continue to batter the state.

After a humid morning where the temperature reached a top of 31, a cold front saw the mercury drop by 7 degrees in just one minute at Geelong about 12.30pm.

In Melbourne, dark clouds and rain moved in at 1.30pm, where temperatures fell from 31 degrees to 22 degrees within half an hour.

Shortly before 3pm, the mercury had dropped further to 20.6 degrees.