Operador de intersección implícita: @

Se aplica a
Excel para Microsoft 365 Excel para Microsoft 365 para Mac Excel 2024 Excel 2021

Microsoft introdujo el operador de intersección implícita como parte de una importante mejora en el idioma de fórmulas de Excel para admitir matrices dinámicas. Las matrices dinámicas aportan a Excel una capacidad de cálculo y una funcionalidad nuevas y significativas.

Idioma de fórmulas actualizado

El idioma de fórmulas actualizado de Excel es casi idéntico al anterior, salvo que usa el operador @ para indicar dónde se puede producir la intersección implícita. En el idioma antiguo este proceso ocurría silenciosamente. Por ello, puede que observe que las @ aparecen en algunas fórmulas al abrirlas en una matriz dinámica de Excel. Las fórmulas se siguen calculando de la misma manera que siempre.  

¿Qué es la intersección implícita?

La lógica de intersección implícita es reducir muchos valores a un único valor. Inicialmente, Excel logró con ello que una fórmula devolviera un único valor, ya que una celda solo podía entonces contener un valor. Si la fórmula devolvía un único valor, la intersección implícita no hacía nada (aunque se realizara técnicamente en segundo plano). La lógica era esta:

  • Si el valor es un solo elemento, devolverlo.
  • Si el valor es un rango, devuelve el valor de la celda que esté en la misma fila o columna que la fórmula.
  • Si el valor es una matriz, seleccione el valor de la parte superior izquierda.

Con la llegada de las matrices dinámicas, Excel ya no tenía que limitarse a devolver valores únicos de fórmulas, por lo que ya no era necesario realizar una intersección implícita silenciosa. En los casos donde la fórmula antigua podía realizar de forma invisible una intersección implícita, las versiones de Excel con matrices dinámicas le muestran con el signo @ dónde habría ocurrido la intersección.  

¿Por qué el símbolo @?

El símbolo @ ya se usa en las referencias de tabla para indicar una intersección implícita. Piense en la siguiente fórmula en una tabla =[@Column1]: El signo @ indica que la fórmula usa una intersección implícita para recuperar el valor en la misma fila de [Columna1].  

¿Puede quitar la @?

Con frecuencia, sí. Depende de lo que devuelva la parte de la fórmula a la derecha de @:

  • Si devuelve un solo valor (lo más habitual), no hay ningún cambio al quitar la @.
  • Si devuelve un rango o matriz, quitar el símbolo @ provoca que se desborde a las celdas adyacentes.

Si quita una @ agregada automáticamente y posteriormente abre el libro en una versión anterior de Excel, aparecerá como una fórmula de matriz heredada (rodeada por llaves {}). Este comportamiento garantiza que la versión anterior no active una intersección implícita.

¿Cuándo se agrega @ a las fórmulas antiguas?

Por lo general, las funciones que devuelven rangos o matrices de varias celdas tienen un prefijo @ si las creó en una versión anterior de Excel. No hay ningún cambio en el modo en que se comporta la fórmula, simplemente le permite ver la intersección implícita que antes era invisible. Entre las funciones comunes que devuelven rangos de varias celdas, se incluyen INDICE, DESREF y las Funciones definidas por el usuario (UDF). Una excepción común se da cuando se incluyen en una función que acepta una matriz o un rango (por ejemplo, SUMA() o PROMEDIO()). 

Vea Funciones de Excel que devuelven rangos o matrices para más información.

Ejemplos

Fórmula original Cómo se ve en una versión de Excel que admite matrices dinámicas Explicación
=SUMA(A1:A10) =SUMA(A1:A10) No se produce ningún cambio: no se puede producir ninguna intersección implícita, ya que la función SUMA espera rangos o matrices.
=A1+A2 =A1+A2 Ningún cambio: no puede darse ninguna intersección implícita.
=A1:A10 =@A1:A10 Se produce una intersección implícita y Excel devuelve el valor asociado con la fila en la que se encuentra la fórmula.
=ÍNDICE(A1:A10;B1) =@ÍNDICE(A1:A10;B1) Puede ocurrir una intersección implícita. La función INDICE puede devolver una matriz o un rango cuando el segundo o el tercer argumento es 0.
=DESREF(A1:A2;1;1) =@DESREF(A1:A2;1;1) Puede ocurrir una intersección implícita. La función DESREF puede devolver un rango de varias celdas. Cuando lo hace, desencadena una intersección implícita.
=MYUDF() =@MYUDF() Puede ocurrir una intersección implícita. Crear funciones personalizadas en Excel puede devolver matrices. Cuando lo hacen, la fórmula original activa una intersección implícita.

Uso del operador @ en fórmulas nuevas

Si escribe o edita una fórmula de matriz dinámica de Excel que contiene el operador @, es posible que aparezca como _xlfn. SINGLE() en versiones de Excel previas a las matrices dinámicas.

Este comportamiento se produce cuando se confirma una fórmula mixta. Una fórmula mixta se basa tanto en el cálculo de matrices como en la intersección implícita. Excel no admite esta combinación antes de la matriz dinámica. Excel solo admite fórmulas que i) intersección implícita o ii) cálculo de matriz.

Cuando Excel tiene matrices dinámicas detecta la creación de una fórmula mixta, propone una variación de la fórmula que usa una intersección implícita en todas partes. Por ejemplo, si entra =A1:A10+@A1:A10, , verá el cuadro de diálogo siguiente:

Captura de pantalla que muestra un cuadro de diálogo en el que se pregunta si prefiere la fórmula =@A1:A10 + @A1:A10 en su lugar.

Si decide rechazar la fórmula propuesta por el cuadro de diálogo, la fórmula =A1:A10+@A1:A10 mixta se confirma. Si abre más tarde esta fórmula en versiones de Excel previas a las matrices dinámicas, aparecerá como =A1:A10+_xlfn.SINGLE(A1:A10) si los operadores @ de la fórmula mixta aparecieran como _xlfn.SINGLE(). Cuando Excel antes de las matrices dinámicas evalúa esta fórmula, devuelve un #NAME. #¡VALOR! 

¿Necesitas más ayuda?

Siempre puede preguntar a un experto en Excel Tech Community u obtener soporte técnico en Comunidades.

Vea también

Función FILTRAR

Función MATRIZALEAT

Función SECUENCIA

Función ORDENAR

Función ORDENARPOR

Función UNICOS

Errores #DESBORDAMIENTO! en Excel

Matrices dinámicas y comportamiento de matriz desbordada