Eventos de uno en uno (ok)
Publicado por Bruno (4 intervenciones) el 01/11/2007 23:53:51
Hola a todos,
En primer lugar perdonad por la nota anterior, pero el ratón del portatil me ha jugado una mala pasada.
Acabo de descubrir los eventos de VB para excel, y me estoy encontrando con algún que otro problema que supongo que no tiene que ser muy complicado de resolver.
He generado un código que, en función del campo que de un desplegable de validación, ejecuta una u otra macro.
El código es algo así.
Private Sub Worksheet_Change(ByVal Target As Range)
Dim VRange As Range
Set VRange = Range("c7")
If Intersect(VRange, Target) Is Nothing Then
Exit Sub
End If
If [c7] = "" Then
Call Macro1
Range("c7").Select
End If
If [c7] = "SÍ" Then
Call Macro2
Range("c7").Select
End If
If [c7] = "NO" Then
Call Macro3
End If
End Sub
El problema es que no sé cómo reproducir esto con otra validación en la misma hoja sin que se vuelva a repetir toda la secuencia anterior, es decir, si elijo otro dato en la celda c45, que se ejecuten otras macros distintas sin que vuelvan a ejecutarse las anteriores.
Soy totalmente nuevo en esto de Visual Basic para Excel, así que os rogaría que, si podéis ayudarme, lo hagáis de forma que no sea demasiado complicada.
Muchas gracias.
En primer lugar perdonad por la nota anterior, pero el ratón del portatil me ha jugado una mala pasada.
Acabo de descubrir los eventos de VB para excel, y me estoy encontrando con algún que otro problema que supongo que no tiene que ser muy complicado de resolver.
He generado un código que, en función del campo que de un desplegable de validación, ejecuta una u otra macro.
El código es algo así.
Private Sub Worksheet_Change(ByVal Target As Range)
Dim VRange As Range
Set VRange = Range("c7")
If Intersect(VRange, Target) Is Nothing Then
Exit Sub
End If
If [c7] = "" Then
Call Macro1
Range("c7").Select
End If
If [c7] = "SÍ" Then
Call Macro2
Range("c7").Select
End If
If [c7] = "NO" Then
Call Macro3
End If
End Sub
El problema es que no sé cómo reproducir esto con otra validación en la misma hoja sin que se vuelva a repetir toda la secuencia anterior, es decir, si elijo otro dato en la celda c45, que se ejecuten otras macros distintas sin que vuelvan a ejecutarse las anteriores.
Soy totalmente nuevo en esto de Visual Basic para Excel, así que os rogaría que, si podéis ayudarme, lo hagáis de forma que no sea demasiado complicada.
Muchas gracias.
Valora esta pregunta


0