Excel - Por favor, necesito esto

 
Vista:

Por favor, necesito esto

Publicado por Yuriandy (5 intervenciones) el 29/01/2007 06:19:56
Hola, disculpa que escriba aparte de lo otro, pero es que estoy desesperado, ya que tengo que entregar ese trabajo mañana, mi problema es el siguiente,
Tengo 2 celdas B2 y D2, deseo que mientras yo valla cambiando números en B2 los valla acumulando en D2, es decir sumando, ya me dieron la solución y es muy buena, pero debo incluirle algo al código de la macro para que me sume también los decimales, es decir tengo un 4 en B2 entonces en D2 tengo un 4 también, entonces si pongo un 2,2 en B2, debería ponerme en D2 6,2 y no lo hace, me pone 6, Que hago, ayudenme please..
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Por favor, necesito esto

Publicado por José Luis (700 intervenciones) el 29/01/2007 08:22:17
Siento no haber respondido antes pero anoche la página me daba un error y no pude conectarme, lo he visto esta mañana.

El "error" está en la definición del tipo de dato. Se usa Val ó CDbl para convertir los datos de tipo String a número, en el caso de de que ponga una letra la macro sumaría cero (0)
Val está asumiendo que es un entero y CDbl lo convierte a decimal de doble precisión.
Los cambios son mínimos pero fíjate donde he puesto CDbl

Private Sub Worksheet_Change(ByVal Target As Range)

'-añadido-
Dim Valor As Double

' En caso de error sale
On Error GoTo Salida

'Impide capturar otros eventos
Application.EnableEvents = False

' Sólo hará algo si se cambia el valor de B2
If Target.Address = "$B$2" Then
' Coge el valor de la celda D2 y lo convierte a número

'-cambio-
Valor = CDbl(Cells(2, 4))
'Suma el valor de D2 con el de B2
'-cambio-
Valor = Valor + CDbl(Target.Value)

'Pone en D2, el resultado
Cells(2, 4) = Valor
End If
Salida: '
'Recupera la captura de eventos
Application.EnableEvents = True
End Sub

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar