If you scroll the picture by adjusting its location, then try this code:
Dim FinalTime = Now.AddSeconds(40)
Dim t As New Thread(Sub()
Dim y As Double = Y1
Const dt = 20
While True
Dim iy = CInt(y)
Dim t1 = Now
PictureBox1.Invoke(Sub()
PictureBox1.Top = iy
PictureBox1.Update()
End Sub)
If iy = Y2 Then Exit While
Thread.Sleep(dt)
Dim dy = (Now - t1).TotalMilliseconds * (Y2 - y) / (FinalTime - Now).TotalMilliseconds
y += dy
y = Math.Min(Y2, y)
End While
End Sub)
t.IsBackground = True
t.Start()
where Y1 is the initial vertical position, Y2 — the final vertical position of the picture (Y2 > Y1), 40 — the duration of the animation (seconds).