Is there any way to make ListBox update/refresh after another item is selected?

To illustrate my issue:
1) Create ListBox1 in UserForm, allow multiselect
2) Add 10 random values
3) Add this Sub in UserForm
Code:
Private Sub ListBox1_Chage()
for i = 1 to 50000000
next i
End Sub
4) Load UserForm and use mouse to select 1st through 10th value

What you should see is that each time you select another item for a period of time two elements are selected. What I would like to do is to add some code at the begging of Private Sub ListBox1_Chage() so that it updates ListBox first and then does the calculation.

Me.Repaint & DoEvents does not work for me.