Después de darle un poco al coco modifique el código y ya me funciono un poco mejor, pero sigue sin funcionar correctamente, les dejo el código modificado y les comento que me hace:
Código:
Private Sub VerticalScroll()
Dim l As Double
Dim a As Double
Dim x As Double
Dim AltoBt As Integer
Dim nProds As Integer
Dim AltoTotBt As Integer
Dim cant As Integer
cant = botonprods.Count
For i = 0 To botonprods.Count - 2
Next
nProds = cant / 4
AltoBt = botonprods(i).Height + 49
AltoTotBt = AltoBt * nProds
x = VScrollProd.Value
a = AltoTotBt - areaprods.Height
l = (a * x) / 1
For i = 0 To botonprods.Count - 1
botonprods(i).Top = -l
Next
End Sub
Como verán agregue un for para poder definir todos mis ID de los picturebox.
Pero el tema que estoy teniendo ahora, es que cuando desplazo el scroll hacia abajo me desaparecen todos los botones, en vez de desaparecer los de la primer linea, y los de la segunda subirlo a la primera, los de la tercera a la segunda, y así sucesivamente. Eso no es todo ya que cuando los regreso solo me regresa la primera linea de picturebox....
.
Espero me puedan ayudar.