Compartir a través de

bucle for con dos variables

Anónimas
2013-11-04T21:39:03+00:00

Buenas

como puedo hacer un bucle de for con dos variables osea que avancen dos variables para algo asi:

For j = 7 To 15

For k = 12 To 22

a = .Range("D" & k).Value

b = Worksheets(n + 1).Range("B" & j).Value

.Range("D" & k).Value = a + b

Next k

Next j

a = .Range

como poner en un solo bucle las variables "j" y "k" que inicien en 7 una y en 12 porque el bucle anterior no me sirve ya que recorre primero todo el for de k primero y no es la idea, la idea es que avancen parejo una variable y simultaneamente la otra

Muchas Gracias

Salud2

Microsoft 365 y Office | Excel | Para la casa | Windows

Pregunta bloqueada. Esta pregunta se migró desde la Comunidad de Soporte técnico de Microsoft. Puede votar si es útil, pero no puede agregar comentarios o respuestas ni seguir la pregunta.

0 comentarios No hay comentarios

3 respuestas

Ordenar por: Muy útil
  1. Anónimas
    2013-11-05T17:59:39+00:00

    Muchas Gracias de hecho ya me llego la luz con lo del LG DES miren:

    If n = 4 Then

    For k = 4 To 7

    For j = 7 To 16

    a = .Cells(j + 5, k).Value

    .Cells(j + 5, k).Value = a + Worksheets(n + 1).Cells(j, k - 2).Value

    Next j

    Next k

    End If

    y si efectivamente tenia razón LG me confundí con los datos simultáneos o parejos son la misma cantidad de un lado y de otro

    las variables k son columnas y la j para filas

    el j + 5 es porque en la otra hoja inicia en la fila 12

    el k -2 es porque inicia en la columna 2

    Muchas Gracias

    Salud2

    ¿Le ha resultado útil esta respuesta?

    0 comentarios No hay comentarios
  2. Anónimas
    2013-11-05T17:27:48+00:00

    Hola:

    El truco es usar un bucle 0 To x (el número total de valores-1), y luego sumar 7 o 12 donde corresponda.

    For x = 0 to 10

       a= .Range("D" & (12+ x).Value  ' (12 + x) corresponde a tu variable k

       b = Worksheets(n+1).Range("B" & (7+x)).value ' (7 + x) corresponde a tu variable j

       .Range("D" & (12+ x).Value = a + b

    Next x

    Lo que no 'entiendo' es que en For j = 7 to 15 son 9 valores, en cambio en For k = 12 to 22 son 11 valores, es decir, pueden avanzar parejos y simultáneamente, pero al final tendras problemas con la j (7+x) porque se acabará antes que la k.

    ¿Le ha resultado útil esta respuesta?

    0 comentarios No hay comentarios
  3. Anónimas
    2013-11-05T14:49:16+00:00

    Hola Esteban,

    Es un gusto poder ayudarte con tu pregunta.

    Para solucionar tu duda con el bucle en Visual Basic de Excel, te dejo el siguiente enlace:

    http://msdn.microsoft.com/es-es/library/eked04a7(v=vs.90).aspx

    En el encontraras toda la información referente a como efectuar los bucles incluso si los quieres infinitos

    Espero que con esto haya solucionado tu duda y puedas efectuar tu programación de manera correcta.

    Buen día

    Diego Castro

    ¿Le ha resultado útil esta respuesta?

    0 comentarios No hay comentarios