Ver Mensaje Individual
  #1 (permalink)  
Antiguo 30/12/2012, 19:18
rockbirra
 
Fecha de Ingreso: noviembre-2008
Mensajes: 37
Antigüedad: 15 años, 6 meses
Puntos: 0
VB - resultado incoherente en for

Hola,

a ver si alguien me ayuda porque no entiendo qué es lo que me pasa.

Os paso la tabla inicial: http://imageshack.us/photo/my-images/109/dibuixb.png/

Lo que quiero es mediante una macro, contar el número de veces que aparece el 0, 1, 2, .... Sé que se puede hacer con contar.si pero necesito hacerlo con la macro.

El codigo es el siguiente:

Sheets("Full1").Select
repeticions = 0
i = 0
j = 0
mec = 0

-For mec = 0 To 77 'número de repeticions

---For i = 1 To 10 'recorrem totes les files
------For j = 1 To 10 'recorrem totes les columnes
---------If Cells(i, j).Value = mec Then
------------repeticions = repeticions + 1
---------End If
------Next j
---Next i

---Sheets("Full2").Select
---Cells(mec + 2, 2).Value = repeticions
---Sheets("Full1").Select
---repeticions = 0
-Next mec

El tema es que la primera vez, busco las veces que el '0' aparece en la imagen del link para cuando tenga las repeticiones, guardarlas en una celda de otra hoja.

El problema es que cuando busco el '0', los valores que me toman i y j en cada iteracion son:

i:1 j:9
i:1 j:10
i:2 j:1 ok
i:2 j:2 ok
i:2 j:4 ok
i:2 j:5 ok
i:2 j:7 ok

lo que no entiendo es por que por lo valores i:1 j:9 y para i:1 j:10 entra en el if, lo que me descuadra el recuento.
Para mi, lo raro, es que cuando busco las veces que aparece el '1' en la imagen del link, funciona, y para el 2 tambien, y el 3....pero para el 0 no lo cuenta bien.

Alguien me puede dar un poco de luz sobre el tema? tiene que ser una tonteria :_

Feliz año! y Muchas gracias!