6 febrero, 2025

FUNCIÓN PARA CONTAR LAS VECES QUE SE REPITE UN CARACTER O TEXTO EN UNA CELDA

Hola a todos:

En el post de hoy os voy a mostrar una sencilla UDF con la que vamos a poder contar las veces que se repite un carácter específico o una cadena de texto en una celda.

La función no distinguirá entre mayúsculas o minúsculas y se podrá aplicar también a caracteres numéricos.

Vamos con un ejemplo sobre un texto, para ello utilizaremos un poema en prosa poética:

FUNCION PARA CONTAR LAS VECES QUE SE REPITE UN CARACTER O TEXTO EN UNA CELDA

Pues bien, por ejemplo, vamos a contar las veces que se repite la «m» en nuestro texto, independientemente si es mayúscula o minúscula.

Lo haremos con esta función que vamos a llamar CONTARV:

Function CONTARV(ByVal target As Range, Valor As String)
'Declaramos variables
Dim Cuenta As Long
Dim Dato As String, celda As Variant
'Por cada celda seleccionada
'Componemos un string (en el que contaremos)
For Each celda In target
Dato = Dato & " " & celda
Next celda
'Contamos cadena de texto o caracter
Cuenta = UBound(Split(LCase(Dato), LCase(Valor)))
'Pasamos el resultado a la función
CONTARV = Cuenta
End Function

Este es el resultado:

FUNCION PARA CONTAR LAS VECES QUE SE REPITE UN CARACTER O TEXTO EN UNA CELDA_1

Y así es como obtenemos el resultado. En este caso, la suma es de 27 veces la letra «m».

Si lo que deseáis es que la función tenga en cuenta mayúsculas y minúsculas, solo tenéis que eliminar la función LCase aplicada a las variables «Dato» y «Valor».

Si queremos contar todo el rango en una única celda, también lo podemos hacer:

FUNCION PARA CONTAR LAS VECES QUE SE REPITE UN CARACTER O TEXTO EN UNA CELDA_2

Esta es una versión más eficiente de otra macro que realiza la misma tarea: CONTAR CARACTERES ESPECÍFICOS EN UN RANGO SELECCIONADO

Y eso es todo, espero que os haya resultado de interés y la podáis utilizar en vuestros trabajos y proyectos.

Descarga el archivo de ejemplo pulsando en: FUNCIÓN PARA CONTAR LAS VECES QUE SE REPITE UN CARACTER O TEXTO EN UNA CELDA

¿Te ha resultado de interés?, puedes apoyar a Excel Signum con una pequeña donación.

Donate Button with Credit Cards

¡¡Muchas gracias!!

Mediante la suscripción al blog, la realización comentarios o el uso del formulario de contacto estás dando tu consentimiento expreso al tratamiento de los datos personales proporcionados según lo dispuesto en la ley vigente (LOPD). Tienes más información al respecto en esta página del blog: Política de Privacidad y Cookies

Comparte este post

Si te ha gustado o tienes alguna duda, puedes dejar aquí tu comentario.

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información.plugin cookies

ACEPTAR
Aviso de cookies