Crear mensaje2

Hola Tavo
Disculpa nuevamente tengo una duda más, me sirvió mucho la respuesta anterior, pero
Ahora tengo un problema con una celda que tiene ingresada una fórmula buscarv, al valor que arroje necesito el mismo mensaje pero no funciona con la validación.
Puede ayudarme nuevamente
Te lo agradecería.

1 Respuesta

Respuesta
1
Me recuerdas la pregunta anterior.
Tavo esta era la pregunta:
Necesito saber como puedo crear un mensaje de alerta para celdas que por medio de fórmulas = valor, si ese valor es falso, se active automáticamente tal mensaje, la fórmula es la siguiente:
si(b1=>100;a1*b1;"mensaje"), como te decia, si es igual "mensaje" que se active tal mensaje este tiene que contar con dos opciones o botones que:
1° Me permita que aunque sea igual a "mensaje" hacer la fórmula a1*b1
2° Cancelar operación y dejar que muestre el resultado de la fórmula normalmente
Me respondiste que usara menu herramientas - datos - validación - personalizada, y que cambiara el mensaje pero esto solo me sirve para ingresar datos en la celda, lo que necesito ahora es que este mensaje funcione con celdas que tengan fórmulas, en este caso tengo celdas que tienen fórmula BUSCARV que extrae datos (números) de otra hoja y al validar celda en menu-validación no funciona.
De antemano gracias.
En este caso, pienso que habría que escribirse un código en VBA para que cuando se modifique la hoja de cálculo verifique el valor resultante de las celdas que deseas validar y en caso de tener un resultado que no es válido muestre un mensaje.
Algo así:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Range("C15").Value >= 100 Then
        MsgBox ("OJO el valor no es válido")
    End If
End Sub

Al colocar este código en tu hoja de cálculo, cada que hagas algún cambio en cualquier celda se revisará el valor de la celda C15, y cuando esta celda tenga un valor que no es válido saltará un mensaje.
Esto podría hacer que tu programa funcionara un poco lento, pero quizás sea impercertible si no se cambia demasiada información.
Hola
Si no es mucha la molestia me podrías guiar paso a paso no se donde se ingresa el código que me diste, y si este mensaje puede ser MsgBox con opción SI / NO osea algo más o menos así.
Private Sub Worksheet_Change(ByVal Target As Range)
If Range("C15").Value >= 100 Then
YesNo = MsgBox("", vbYesNo + vbCritical, "Advertencia")
Select Case YesNo
Case vbYes
                  ' aqui si es si  E15*C15 '
Case vbNo
                   MsgBox ("Operación cancelada")
End Select
End If
End Sub
No se si me entiendes la idea, no se si esta bien, por eso guiame por favor
donde ingreso este código si grabo una macro etc...
Te lo agradecería enormemente.
Das clic derecho sobre el nombre de la hoja donde deseas que se ejecute esta tarea y seleccionas "Ver código". Allí pegas el código.
Pienso que puede ser algo así:
Private Sub Worksheet_Change(ByVal Target As Range)
If Range("C15").Value >= 100 Then
    x = MsgBox("Alerta", vbYesNo)
    If x = vbYes Then
        Range(Target.Address).Value = Range("C15").Value * Range("E15").Value
    Else
        MsgBox ("Operación cancelada")
    End If
End If
End Sub


Prueba pegando el código en tu hoja de cálculo y puedes ir ajustándolo hasta que consigas lo que buscas.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas