Distribuir cantidad total en celdas excel

[Buen día a todos 

Necesito distribuir varias cantidades totales como ejemplo en la imagen, 15 es el total y necesito distribuir en 4 rangos con cantidades de 1 y 2

1 respuesta

Respuesta
1

Considerando que en la columna S debes tener mínimo 12 y máximo 24.

Prueba lo siguiente.

Sub Distribuir()
  Dim i As Long, j As Long, k As Long, m As Long
  Dim dos As Long, uno As Long, x As Long, y As Long
  Dim arr As Variant
  '
  arr = [ROW(1:12)]
  '
  For i = 2 To Range("S" & Rows.Count).End(3).Row
    dos = Range("S" & i).Value - 12
    uno = 12 - dos
    For j = 1 To 12
      If j <= uno Then
        arr(j, 1) = 1
      Else
        arr(j, 1) = 2
      End If
    Next
    '
    Randomize
    For j = 1 To UBound(arr)
      x = Int(UBound(arr) * Rnd + 1)
      y = arr(x, 1)
      arr(x, 1) = arr(j, 1)
      arr(j, 1) = y
    Next
    '
    k = 3
    m = 0
    For j = 1 To 12
      Cells(i, k) = arr(j, 1)
      k = k + 1
      m = m + 1
      If m = 3 Then
        m = 0
        k = k + 1
      End If
    Next
  Next
End Sub

Waoo muchas ¡Gracias! Dante excelente tu aporte

Encantado de ayudarte, g ra cias por comentar.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas