
Macro automática para escribir una X en función del valor de una celda
Publicado por cactus (16 intervenciones) el 16/03/2017 12:52:38
Hola,
Quería realizar una macro para que, cuando en una lista desplegable se escoja la opción "Circular" o "Cuadrada", escriba una X en las celdas que yo quiera.
Es decir, yo tengo en las celdas M13, N13 y O13 una lista desplegable con las opciones "Circular", "Cuadrada" y "Rectangular". Si se escoge cuadrada o circular, en las filas 14 y 15 de la columna correspondiente, debe aparecer una X.
Pero además, hay una dificultad añadida y es que, el número de columnas de la lista desplegable es variable, es decir, la tabla comienza en M13 y la última columna depende del valor introducido en la celda J6.
Yo redacté la siguiente macro, pero no funciona.
¿Una ayuda?
Muchas gracias
Quería realizar una macro para que, cuando en una lista desplegable se escoja la opción "Circular" o "Cuadrada", escriba una X en las celdas que yo quiera.
Es decir, yo tengo en las celdas M13, N13 y O13 una lista desplegable con las opciones "Circular", "Cuadrada" y "Rectangular". Si se escoge cuadrada o circular, en las filas 14 y 15 de la columna correspondiente, debe aparecer una X.
Pero además, hay una dificultad añadida y es que, el número de columnas de la lista desplegable es variable, es decir, la tabla comienza en M13 y la última columna depende del valor introducido en la celda J6.
Yo redacté la siguiente macro, pero no funciona.
1
2
3
4
5
6
7
8
9
10
11
12
13
Private Sub Worksheet_Change(ByVal Target As Range)
Dim var As Integer
var = WorksheetFunction.Sum(Val(11), [J6])
For filas = 14 To 15
For columnas = 12 To var
valor = Range(filas, columnas).Value
If Cells(filas, columnas).Value = "Circular" Or Cells(filas, columnas).Value = "Cuadrada" Then
valor = "X"
Else
End If
Next
Next
End Sub
¿Una ayuda?
Muchas gracias
Valora esta pregunta


0