Sumas acumuladas en una celda con VBA

Con el presente video tutorial damos respuesta a un suscriptor que pregunta como sumar los números introducidos en una celda de manera consecutiva.

En este caso utilizamos una corta validación sobre la celda donde se hace la introducción de los números y posterior a ello ejecutamos la suma de los valores introducidos.

Procedimiento Sub que ejecuta la suma de los números ingresados en una celda

Sub SumarNumeros(Celda As Range)
   With Celda
      If (.Address = "$C$4" Or .Address = "$D$3") And IsNumeric(Range("C3").Value) Then
         With Range("C3")
            Range("A1").Value = Range("A1").Value + .Value
            .ClearContents
            .Select
         End With
      End If
   End With
End Sub

Se usa la propiedad que devuelve la dirección de una celda (Address) y la función interna de VBA IsNumeric para verificar si el valor introducido es un valor numérico.

Ejecución automática mediante el evento SelectionChange de una hoja de Excel

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
   Call Operaciones.SumarNumeros(Target)
End Sub

Las construcciones With...End With se usan para hacer el llamado a los respectivos objetos y minimizar las líneas de código escritas.


No hay comentarios.:

Publicar un comentario