como contar repeticiones consecutivas?

10/11/2007 - 16:02 por GUSTAVO A SARMIENTO V | Informe spam
si tengo una columna [A] con resultados:
7
4
5
2
3
6
6
2
8
9
4
7
9
9
7
1
3
3
4
y en la celda `[B1] quiero obtener como resultado el numero de veces
consecutivas que un numero se ha repetido, (para el caso: 6,6,; 9,9 ; 3,3 =
3(numero de veces que se ha cumplido el evento)), como debo programar la
celda [B1]?
GUSTAVO A SARMIENTO V

Preguntas similare

Leer las respuestas

#11 Willo
12/11/2007 - 00:48 | Informe spam
AnSanVal ha escrito:
Para contar como un solo grupo, las repeticiones de más de dos:

[en un módulo ordinario)
Function grupos(area As Range)
Dim celda As Range
If area.Columns.Count > 1 Then Exit Function 'no funciona con más de 1
columna.
For Each celda In area ' recorre todas las celdas del rango.
If celda.Value = celda.Offset(1).Value Then
If celda.Row = 1 Then 'incrementa el contador.
grupos = grupos + 1
Else ' incrementa el contador si NO se ha contado ese grupo.
If celda.Value <> celda.Offset(-1).Value Then grupos = grupos + 1
End If
End If
Next celda
End Function


Ejemplo en B1 : =grupos(A1:A19)

Saludos desde Tenerife (Islas Canarias).
************************************************
"Willo" escribió en el mensaje
news:



Muy buena AnSanVal

Willo


On 10 nov, 12:02, GUSTAVO A SARMIENTO V
wrote:
> si tengo una columna [A] con resultados:
> 7
> 4
> 5
> 2
> 3
> 6
> 6
> 2
> 8
> 9
> 4
> 7
> 9
> 9
> 7
> 1
> 3
> 3
> 4
> y en la celda `[B1] quiero obtener como resultado el numero de veces
> consecutivas que un numero se ha repetido, (para el caso: 6,6,; 9,9 ; 3,3
> > > 3(numero de veces que se ha cumplido el evento)), como debo programar la
> celda [B1]?
> GUSTAVO A SARMIENTO V

Gustavo y que quieres que ocurra en el caso que salga un número
repetido tres veces consecutivamente, que te lo cuente como uno o dos?

Willo
Respuesta Responder a este mensaje
#12 Héctor Miguel
12/11/2007 - 02:20 | Informe spam
hola, chicos !

otra variante con funciones de hoja de calculo
(asumiendo el mismo rango A1:A19, agregar la fila 20 para la segunda comparacion, p.e.)

=sumaproducto(--(a1:a18¢:a19),--(a2:a19<>a3:a20))

saludos,
hector.

AnSanVal escribio en el mensaje ...
Para contar como un solo grupo, las repeticiones de mas de dos:
(en un modulo ordinario)
Function grupos(area As Range)
Dim celda As Range
If area.Columns.Count > 1 Then Exit Function 'no funciona con mas de 1 columna.
For Each celda In area ' recorre todas las celdas del rango.
If celda.Value = celda.Offset(1).Value Then
If celda.Row = 1 Then 'incrementa el contador.
grupos = grupos + 1
Else ' incrementa el contador si NO se ha contado ese grupo.
If celda.Value <> celda.Offset(-1).Value Then grupos = grupos + 1
End If
End If
Next celda
End Function

Ejemplo en B1 : =grupos(A1:A19)
Respuesta Responder a este mensaje
#13 Willo
12/11/2007 - 03:49 | Informe spam
On 11 nov, 22:20, "Héctor Miguel"
wrote:
hola, chicos !

otra variante con funciones de hoja de calculo
(asumiendo el mismo rango A1:A19, agregar la fila 20 para la segunda comparacion, p.e.)

=sumaproducto(--(a1:a18¢:a19),--(a2:a19<>a3:a20))

saludos,
hector.

Increible como manejas la función =SUMAPRODUCTO


buena Hector Miguel

Saludos

Willo


> AnSanVal escribio en el mensaje ...
> Para contar como un solo grupo, las repeticiones de mas de dos:
> (en un modulo ordinario)
> Function grupos(area As Range)
> Dim celda As Range
> If area.Columns.Count > 1 Then Exit Function 'no funciona con mas de 1 columna.
> For Each celda In area ' recorre todas las celdas del rango.
> If celda.Value = celda.Offset(1).Value Then
> If celda.Row = 1 Then 'incrementa el contador.
> grupos = grupos + 1
> Else ' incrementa el contador si NO se ha contado ese grupo.
> If celda.Value <> celda.Offset(-1).Value Then grupos = grupos + 1
> End If
> End If
> Next celda
> End Function

> Ejemplo en B1 : =grupos(A1:A19)- Ocultar texto de la cita -

- Mostrar texto de la cita -
Respuesta Responder a este mensaje
#14 AnSanVal
12/11/2007 - 13:20 | Informe spam
Muy buena. Prefiero esa solución antes que la mia. :-)

Saludos desde Tenerife (Islas Canarias).
************************************************
"Héctor Miguel" escribió en el mensaje
news:e$
hola, chicos !

otra variante con funciones de hoja de calculo
(asumiendo el mismo rango A1:A19, agregar la fila 20 para la segunda
comparacion, p.e.)

=sumaproducto(--(a1:a18¢:a19),--(a2:a19<>a3:a20))

saludos,
hector.
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida