Por ejemplo, para aplicar la validación de datos de lista a la segunda columna:
Vehículo | Modelo |
---|---|
auto | |
bicicleta | |
auto |
Me gustaría hacer una fórmula como esta, pero da error:
=IF($A:$A=“car”, CarTable, BikeTable)
El mensaje de error es:
"La Fuente actualmente evalúa como un error".
Y si hago clic en continuar, hay un botón desplegable pero no contiene nada.
Si lo pongo A2:A4
en lugar de A:A
eso, funcionaría, pero necesito que se aplique a la columna real para que todas las celdas de la columna tengan validación de datos (para cuando eventualmente se ingresen nuevos elementos).
¿Cómo debería hacer esto?
Respuesta1
Suponiendo que desea que la columna A
tenga formato según el valor de las celdas de la columna A
, puede utilizar la siguiente condición:
=A2="car"
Y aplicarlo aA:A
Si desea que se formatee varias columnas en función de los valores de column A
, deberá utilizar referencias absolutas:
=$A2="car"
Y aplíquelo al rango deseado (ej. A:C
:)
Respuesta2
Una cosa que definitivamente es un problema: parece que su rango de referencia es incorrecto. Eso es esto: $A:$A
. Está intentando evaluar toda la columna y juzgar si es igual a "car"
.
Intente utilizar cualquiera de los dos $A2
(suponiendo que la primera celda de su rango sea B2
) o, según su versión de Excel, @$A:$A
. Ambos devolverán una sola celda. El primer caso ( $A2
) actualizará la fila referenciada para cada celda del rango con validación pero la columna permanecerá absoluta gracias a $
. El segundo ( @$A:$A
) es básicamente igual en el sentido de que devuelve la celda de la columna A
que está en la misma fila que la celda que estamos evaluando. En su caso, estos dos funcionan igual porque los datos de la columna B
están en la misma fila que los datos de la columna A
.
También es posible que el problema sea ese CarTable
o BikeTable
sea más de una sola columna. Si ese es el caso, ajuste el rango nombrado para que sea una sola columna.
También es posible que CarTable
sea una mesa real. En ese caso, puede agregar el nombre de la columna en la que desea envolver todo de INDIRECT()
esta manera:
Indirect("CarTable[Model]")