Excel - Ayuda con codigo vba, Impedir datos en celdas.

 
Vista:
sin imagen de perfil
Val: 6
Ha aumentado 1 puesto en Excel (en relación al último mes)
Gráfica de Excel

Ayuda con codigo vba, Impedir datos en celdas.

Publicado por Forero (2 intervenciones) el 23/07/2019 10:30:47
Buenas chicos.

Tengo una hoja excel con unas 400 celdas (combinadas de diferentes tamaños) que simulan una excavación arqueológica.

Cuando en una de esas celdas pongo un "1" se ponen de un color, con un "2" de otro, y asi hasta el "5".

Hay celdas que solo pueden ir con el número "1" y otras solo con el resto "2-3-4-5". La idea es conseguir que en las celdas que SOLO pueden tener un "1" de alguna forma se impida meter otro número o si se hace que se borre.

Para las celdas que solo admiten el "1" he usado este código que avisa que no se puede poner ese número y borra el contenido.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
Private Sub Worksheet_Change(ByVal Target As Range)
 
    If Range("BH4") > "1" Then
        MsgBox "Esta excavación no permite este código. Insertar 1"
        Range("BH4:BH5").ClearContents
    ElseIf Range("BJ4") > "1" Then
        MsgBox "Esta excavación no permite este código"
        Range("BJ4:BJ5").ClearContents
    ElseIf Range("BL4") > "1" Then
        MsgBox "Esta excavación no permite este código"
        Range("BL4:BL5").ClearContents
 
End If
End Sub

Y para las celdas solo admiten el "2-3-4-5" este otro código.

1
2
3
4
5
6
ElseIf Range("BH6") = "1" Then
    MsgBox "Esta excavación no permite este código. Inserta 2, 3, 4 o 5"
    Range("BH6:bH10").ClearContents
ElseIf Range("BJ6") = "1" Then
    MsgBox "Esta excavación no permite este código. Inserta 2, 3, 4 o 5"
    Range("BJ6:bJ10").ClearContents

Alguna otra solución? ya que hacer esto por cada celda es una currada.

Las celdas combinadas donde solo puede ir el "1" son de dos celdas A1:A2 por ejemplo y las otras son de 5 celdas A3:A7.

Gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Hector
Val: 857
Bronce
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

Ayuda con codigo vba, Impedir datos en celdas.

Publicado por Hector (137 intervenciones) el 23/07/2019 17:32:08
Buen dia, prueba esto:

1.) Selecciona las Celdas
2.) Datos->Validación de Datos->Configuración
Permitir: Lista
Origen: 2;3;4;5

saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Dirk
Val: 658
Bronce
Ha disminuido 1 puesto en Excel (en relación al último mes)
Gráfica de Excel

Ayuda con codigo vba, Impedir datos en celdas.

Publicado por Dirk (166 intervenciones) el 23/07/2019 20:20:16
Complementando la sugerencia del amigo Hector, selecciona las celdas donde SOLO se puede ingresar el valor 1, vas a Datos / Validacion de Datos / Validacion de Datos, la pestaña Configuracion la dejas de esta forma:
Captura1


y en la pestaña Mensaje de Error de esta forma:
Captura2


y esto es lo que saldría en caso de meter algún numero diferente a 1
Captura3


Para el resto de las excavaciones ingresas los valores 2,3,4,5

Espero te sirva, salu2
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 6
Ha aumentado 1 puesto en Excel (en relación al último mes)
Gráfica de Excel

Ayuda con codigo vba, Impedir datos en celdas.

Publicado por Forero (2 intervenciones) el 24/07/2019 06:51:51
Pues me habeis solucionado un gran problema. Muchas gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar