Validar una celda con relación al valor de otra celda

Suponiendo que en las celdas de la columna "B" puedo capturar meses o el texto "refacciones", lo que necesito es que dependiendo del valor que capture en las celdas de la columna B (b6, b7... B40), me restrinja el valor que pueda capturar en la columna "g" (g6, g7... G40) de la misma fila, es decir, si registro "refacciones", el valor de la columna "g", no debe ser mayor a 5000, y en caso de que capture cualquier mes o periodo del año, el valor de la columna "g" no debe de ser mayor a 2000

1 respuesta

Respuesta

·

En la hoja donde metas los datos debes meter esta macro:

Private Sub Worksheet_Change(ByVal Target As Range)Dim celda As RangeIf Intersect(Range("B6:B40"), Target) Is Nothing Then Exit SubFor Each celda In Intersect(Range("B6:B40"), Target)    celda.Offset(0, 5).Validation.Delete    If celda.Text = "refacciones" Then        celda.Offset(0, 5).Validation.Add Type:=xlValidateDecimal, AlertStyle:=xlValidAlertStop, Operator _        :=xlLessEqual, Formula1:="5000"        If Val(celda.Offset(0, 5)) > 5000 Then celda.Offset(0, 5) = 5000    Else        celda.Offset(0, 5).Validation.Add Type:=xlValidateDecimal, AlertStyle:=xlValidAlertStop, Operator _        :=xlLessEqual, Formula1:="2000"        If Val(celda.Offset(0, 5)) > 2000 Then celda.Offset(0, 5) = 2000    End IfNextEnd Sub

A lo mejor no es lo que quieres pero a partirde ella se puede llegar a conseguirlo.

Pruébala y ya me dirás

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas