Listas desplegables relacionadas
Buenas.. Tengo un problema con un macro en excel.. Tengo un macro sobre listas desplegables relacionadas.. Es decir si yo elijo la opción A de la primera lista, en una segunda lista me va a desplegar todas la opciones relacionadas con A, si elijo la opción B en la primera lista, me va a desplegar todas las opciones relacionadas con B en la segunda lista y así sucesivamente...
El problema es que tengo que crear las listas que se van a desplegar en la segunda lista dentro de la misma hoja.. Y cada vez que borro o inserto filas o columnas se me corren las listas.. Este es el grandefecto que tengo con este macro..
Me gustaría saber si no existe una opción para colocar directamente las listas dentro del macro..
Otro defecto del macro es que solo lo puedo utilizar una vez dentro de una misma hoja.. Es decir no puedo colocar varias listas relacionadas en una misma hoja.
Este macro lo tome de una experta dentro de esta página, de verdad me ha servido bastante.. Pero me gustaría saber si se les puede realizar las mejoras que ya nombre..
Aquí anexo el macro..
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 2 Then
Target.Offset(0, 1).Value = ""
Select Case Target.Value
'se establece un Case por cada opción de MARCA
Case Is = "RC"
With Target.Offset(0, 1).Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=$AY$1:$AY$4"
End With
Case Is = "RCO"
With Target.Offset(0, 1).Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=$AZ$1:$AZ$3"
End With
Case Is = "RO"
With Target.Offset(0, 1).Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=$BA$1:$BA$3"
End With
Case Is = "ROCC"
With Target.Offset(0, 1).Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=$BB$1:$BB$3"
End With
'continuar con otras marcas
End Select
End If
End Sub
El problema es que tengo que crear las listas que se van a desplegar en la segunda lista dentro de la misma hoja.. Y cada vez que borro o inserto filas o columnas se me corren las listas.. Este es el grandefecto que tengo con este macro..
Me gustaría saber si no existe una opción para colocar directamente las listas dentro del macro..
Otro defecto del macro es que solo lo puedo utilizar una vez dentro de una misma hoja.. Es decir no puedo colocar varias listas relacionadas en una misma hoja.
Este macro lo tome de una experta dentro de esta página, de verdad me ha servido bastante.. Pero me gustaría saber si se les puede realizar las mejoras que ya nombre..
Aquí anexo el macro..
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 2 Then
Target.Offset(0, 1).Value = ""
Select Case Target.Value
'se establece un Case por cada opción de MARCA
Case Is = "RC"
With Target.Offset(0, 1).Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=$AY$1:$AY$4"
End With
Case Is = "RCO"
With Target.Offset(0, 1).Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=$AZ$1:$AZ$3"
End With
Case Is = "RO"
With Target.Offset(0, 1).Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=$BA$1:$BA$3"
End With
Case Is = "ROCC"
With Target.Offset(0, 1).Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=$BB$1:$BB$3"
End With
'continuar con otras marcas
End Select
End If
End Sub
1 Respuesta
Respuesta de Elsa Matilde
1