Inicio > Microsoft Excel > carruina > contar elementos repetidos en matriz

contar elementos repetidos en matriz

Experto:
Usuario:
Fecha: 04/09/2007
Valoración: (5,00 sobre 5) Categoría: Microsoft Excel
06/08/2007
malaguanyat, usuario preguntando en Microsoft Excel
Usuario
Hola,...trato de hacer como la función contar.si pero en vez de en un rango, hacerlo en una matriz, es decir, si la primera fila de la matriz es tomates, peras, tomates, q la segunda fila sea el numero de veces q se repite cada elemento en la matriz hasta su posicion, de tal manera q quede así:

tomates 1
peras 1
tomates 2

el motivo de intentar eso es q con rangos muy grandes la formula contar.si me va lento, y en cambio por lo q observo, vb trabaja bastante más rápido con matrices.

apreciaría cualquier sugerencia tuya sobre ello.

Saludos y muchas gracias
07/08/2007
malaguanyat, usuario preguntando en Microsoft Excel
Usuario
a q estas de vacaciones.

Salut.
02/09/2007
malaguanyat, experto respondiendo en Microsoft Excel
Experto
Hola

Efectivamente estaba de vacaciones, en fin se acaba pronto lo bueno.


Te mando este ejemplo de funcion que recorre una matriz y almacena el numero de repeticiones hasta el momento

Private Sub CommandButton2_Click()

Dim matriz(1 To 10, 1 To 2) As String


matriz(1, 1) = "Tomates"
matriz(2, 1) = "Peras"
matriz(3, 1) = "Tomates"
matriz(4, 1) = "Peras"
matriz(5, 1) = "Tomates"
matriz(6, 1) = "Manzanas"
matriz(7, 1) = "Tomates"
matriz(8, 1) = "Manzanas"
matriz(9, 1) = "Tomates"
matriz(10, 1) = "Manzanas"
i = 1




For i = LBound(matriz, 1) To UBound(matriz, 1)
If matriz(i, 2) = "" Then
cont = 1
For j = i To UBound(matriz, 1)
If matriz(j, 1) = matriz(i, 1) Then

matriz(j, 2) = cont
cont = cont + 1
End If
Next j
Else
End If
Next i

End Sub


Un saludo
04/09/2007
malaguanyat, usuario preguntando en Microsoft Excel
Usuario
sé a lo q te refieres, lo bueno se acaba pronto, y muchas gracias por tu respuesta, esas linias hacen perfectamente lo q te plantee.
Enlaces patrocinados