La Web del Programador: Comunidad de Programadores
https://www.lawebdelprogramador.com/foros/Excel/822703-Formula-MODA-para-texto.html

Fórmula MODA para texto

Fórmula MODA para texto

Publicado por Ermitaño (2 intervenciones) el 14/06/2007 00:38:31
Hola a todos.
Por favor, necesito que me ayuden a adaptar la fórmula MODA para que me sirva con texto. Necesito saber cual es la palabra que mas veces aparece en una columna. Muchas gracias de antemano.
Imágen de perfil de Abraham Valencia

RE:Fórmula MODA para texto

Publicado por Abraham Valencia (2415 intervenciones) el 14/06/2007 00:43:45
=INDICE(A1:A9,MODA(COINCIDIR(A1:A9,A1:A9,0)+TRANSPONER({0\0})))

El 0\0, podria ser 0;0 o 0.0 o 0,0

Abraham
Imágen de perfil de Abraham Valencia

RE:Fórmula MODA para texto

Publicado por Abraham Valencia (2415 intervenciones) el 14/06/2007 00:45:27
Me olvidadba, es matricial asi que ingresal presionando SHIFT+CTRL+ENTER, sino no funcionara

Abraham

RE:Fórmula MODA para texto

Publicado por Ermitaño (2 intervenciones) el 14/06/2007 01:23:37
Muchas gracias por tu pronta respuesta Abraham!
Sin embargo necesito que me expliques en mas detalle el asunto.... soy un usuario con conocimientos básicos. Que significa "El 0/0, podría ser0;0 o 0.0 o 0,0"'? ¿Que diferencia existe entre una fórmula normal y una matricial?.... lo que necesito concretamente es esto: estoy recopilando información sobre el clima y quiero que en una celda me indique si a lo largo del mes el clima fué predominantemente "seco" o "lluvioso" , analizando las entradas para cada día del mes.... Gracias por su ayuda.... y su tiempo.

RE:Fórmula MODA para texto

Publicado por Luis Rene Sigma (1 intervención) el 27/06/2007 22:54:18
Favor de darme mis creditos, copienla en un modulo de visual basic y ya podran usarla:

Office 2007 no tiene problemas con esto, la funcion moda soporta texto.

Function ModaTexto(RangoTexto) As String

'por rene contruida "a la mala"



Dim Textos As Collection

Dim Esta As Boolean

Dim Celda 'objeto celda

Dim i As Integer





Set Textos = New Collection



'La primera desgracia es construir la collecion con los textos sin repetir

For Each Celda In RangoTexto

'barrer cada celda

For i = 1 To Textos.Count

If Celda.Value = Textos(i) Then

Esta = True

Exit For

Else

Esta = False

End If

Next

If Esta = False And Celda.Value <> "" Then Textos.Add (Celda.Value) 'no tomamos en cuenta los valores vacios

Next



Dim a As String

For i = 1 To Textos.Count

a = a & " " & Textos(i)

Next

'muestra lo que tiene la collecion

'MsgBox a



'ahora hay que contar con la collecion vs el rango

Dim TempStr As String 'variable que guardara el string

Dim CuentaInt As Integer 'se va incrementando cada vez que aparezca el string

Dim TempInt As Integer 'esta guardara la cantidad



For i = 1 To Textos.Count

For Each Celda In RangoTexto

If Textos(i) = Celda.Value Then

CuentaInt = CuentaInt + 1

If CuentaInt > TempInt Then

TempInt = CuentaInt

TempStr = Textos(i)

End If

End If

Next

CuentaInt = 0

Next

'muestra la ganadora

'MsgBox TempStr & " " & TempInt



ModaTexto = TempStr



End Function

RE:Fórmula MODA para texto

Publicado por Edgar (1 intervención) el 13/01/2014 23:31:45
Gracias! Ayudo muchisimo!

RE:Fórmula MODA para texto

Publicado por YOSELIN (1 intervención) el 20/11/2022 14:01:30
muchas gracias me ha servido mucho