En este artículo, crearemos una función personalizada para calcular la suma de dígitos en una celda.

Los datos de muestra para este ejemplo consisten en datos de ventas. Cada agente ha vendido un producto diferente. En una celda tenemos el recuento del artículo vendido seguido del nombre del producto. Queremos encontrar el artículo total vendido por cada agente.

ArrowRaw

Hemos creado la función «SumDigits» para calcular la suma de dígitos en la celda. Esta función toma el rango de celda como entrada y devuelve la suma de dígitos en la celda.

ArrowOutput

Explicación lógica

Hemos creado la función personalizada «SumDigits» para calcular la suma de dígitos en una celda. En esta función, encontramos la longitud de la cadena en la celda y luego hacemos un bucle desde el primer carácter hasta el último carácter de la cadena. Luego buscamos y sumamos los valores numéricos encontrados en la cadena para obtener la suma de dígitos.

Explicación del código

Medio (número, i, 1)

La función Mid se utiliza para extraer la subcadena de la cadena principal.

El código anterior extraerá un carácter de la cadena principal a la vez.

IsNumeric (valor)

La función IsNumeric se usa para verificar si el valor dado es numérico.

Val (valor)

La función Val se utiliza para convertir la cadena en un valor numérico.

Siga a continuación el código

Option Explicit

Function SumDigits(Number As Variant)

Dim i As Integer

For i = 1 To Len(Number)

If IsNumeric(Mid(Number, i, 1)) Then

SumDigits = SumDigits + Val(Mid(Number, i, 1))

End If

Next i

End Function

Si te gustó este blog, compártelo con tus amigos en Facebook y Facebook.

Nos encantaría saber de usted, háganos saber cómo podemos mejorar nuestro trabajo y hacerlo mejor para usted. Escríbanos a [email protected]