............ Foro Excel
Si no lo has hecho aún: REGISTRATE!!!

Valor anterior de una celda

Ver el tema anterior Ver el tema siguiente Ir abajo

Valor anterior de una celda

Mensaje por Tatayayan el Miér Mar 16, 2011 6:25 pm

Hola, encontré éste código en la red (me parece que es de Abraham) y lo que hace es devolver el valor anterior de una celda.



Dim lngvalorinicial&


Private Sub Worksheet_Change(ByVal Target
As Range)



Dim lngnuevovalor&


lngnuevovalor& = Target


MsgBox "El nuevo valor es: " &
lngnuevovalor&



MsgBox "El valor anterior era: "
& lngvalorinicial&



End Sub


Private Sub Worksheet_SelectionChange(ByVal
Target As Range)



lngvalorinicial& = Target


End Sub


Hay otra forma de averiguarlo?
avatar
Tatayayan
Moderador
Moderador

Masculino Cantidad de envíos : 319
Ciudad - Pais : Chamical- La Rioja - ARG
Fecha de inscripción : 20/11/2008

Volver arriba Ir abajo

Re: Valor anterior de una celda

Mensaje por Tatayayan el Miér Mar 16, 2011 6:42 pm

Perdón "pegué" desde word:
Dim lngvalorinicial&

Private Sub Worksheet_Change(ByVal Target As Range)
Dim lngnuevovalor&
lngnuevovalor& = Target
MsgBox "El nuevo valor es: " & lngnuevovalor&
MsgBox "El valor anterior era: " & lngvalorinicial&
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
lngvalorinicial& = Target
End Sub

Pero esto no resulta si la celda tiene una validadcion de datos tipo lista y puedo escoger un valor de la misma.
avatar
Tatayayan
Moderador
Moderador

Masculino Cantidad de envíos : 319
Ciudad - Pais : Chamical- La Rioja - ARG
Fecha de inscripción : 20/11/2008

Volver arriba Ir abajo

Re: Valor anterior de una celda

Mensaje por Tatayayan el Miér Mar 16, 2011 8:22 pm

Estoy inverstigando creo tener algo, cuando lo consiga lo pongo.
avatar
Tatayayan
Moderador
Moderador

Masculino Cantidad de envíos : 319
Ciudad - Pais : Chamical- La Rioja - ARG
Fecha de inscripción : 20/11/2008

Volver arriba Ir abajo

Re: Valor anterior de una celda

Mensaje por Tatayayan el Jue Mar 17, 2011 10:37 am

Me sirvió, no usa al evento cambiar al seleccionar.
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Valor_Ant As String
If Intersect(Target, Range("A1:A10")) Is Nothing Then Exit Sub
With Application
On Error GoTo ErrHandler
.EnableEvents = False
.Undo
Valor_Ant = Target.Cells(1).Value
.Undo
.EnableEvents = True
End With
MsgBox "Valor Anterior " & Valor_Ant, 64, ""
ErrHandler:
Application.EnableEvents = True
If Err.Number <> 0 Then
MsgBox "Error: " & Err.Number & vbNewLine & Err.Description
End If
End Sub
avatar
Tatayayan
Moderador
Moderador

Masculino Cantidad de envíos : 319
Ciudad - Pais : Chamical- La Rioja - ARG
Fecha de inscripción : 20/11/2008

Volver arriba Ir abajo

Re: Valor anterior de una celda

Mensaje por Contenido patrocinado


Contenido patrocinado


Volver arriba Ir abajo

Ver el tema anterior Ver el tema siguiente Volver arriba


 
Permisos de este foro:
No puedes responder a temas en este foro.