Nombres en Excel II

Continúa de la nota anterior.

Mencioné en la nota anterior que para utilizar un nombre en una fórmula, presionamos F3 en el modo edición. Continuando con la tabla del ejemplo anterior:

Para calcular las suma de las ventas anuales de los sectores norte y occidente, nos situamos en una celda vacía y presionamos el signo = seguido inmediatamente de la tecla F3. De este modo Excel nos muestra su cuadro de diálogo Pegar nombre:

Seleccionamos "norte" y damos clic en Aceptar, o damos doble clic en el nombre. La fórmula queda:

=norte

Ahora escribimos el signo + y repetimos los pasos anteriores, pero esta vez seleccionando el nombre "occidente", quedando:

=norte+occidente

Damos clic otra vez para aceptar la fórmula. Excel nos mostrará el resultado buscado.

Veamos ahora las "reglas" que debemos seguir a la hora de definir o crear un nombre. Los nombres:

1. No pueden contener espacios, aunque sí tenemos permitido usar el guión bajo (_), y la comilla ('). Cualquier otro símbolo o caracter especial no está permitido.

2. Pueden tener una extensión máxima de 255 caracteres. Sin embargo, es recomendable tenerlos lo más cortos posibles.

3. No pueden ser valores, ni pueden comenzar con un número, pero sí pueden incluir números a partir del segundo caracter. Derivado de esto, al crear un nombre, debemos tomar en cuenta lo siguiente: si la fila o columna que queremos usar como rótulos para los nombres, contiene un valor numérico, Excel no creará ningún nombre para la fila o columna correspondiente. Además, no nos alertará de esta situación.

Hemos visto como nombrar un rango o una fórmula. Sin embargo (y no sé cómo se me pasó comentarlo), también es posible nombrar constantes y constantes matriciales. Si por ejemplo, queremos usar cierta discreción al distribuir determinados datos, podemos crear un nombre que almacene estos datos y después usar este nombre en una fórmula, p. ej.: =sueldoa*factor. Aunque estamos de acuerdo que el nivel de confidencialidad es mínimo. Cualquiera que sepa abrir el cuadro Definir nombre podrá averiguar el valor de los nombres.

(En realidad, lo único que podemos nombrar en Excel son fórmulas. Si revisamos con atención nuestra lista de nombres veremos que, en todos los casos, el valor de Se refiere a: comienza con el signo =. En Excel, cualquier cosa que comienza con el signo = es una fórmula. Sin embargo, es más conveniente diferenciar entre rangos, fórmulas y valores nombrados).

Un detalle a tener en cuenta es que en el cuadro de nombres solo aparecen los nombres de rangos. Para conocer los valores de fórmulas o constantes nombradas deberemos ir al cuadro Definir nombre.

Casi hemos terminado con este tema. Para alcanzar el dominio completo del mismo, solo nos falta comprender el tema de los nombres (o rangos) dinámicos...

Link

Nombres en Excel

A las cosas hay que llamarlas por su nombre. Esto es especialmente cierto cuando queremos comunicar algo con absoluta claridad, sin dejar lugar a la ambigüedad. En Excel esto también es muy importante. Quien desee llegar a elaborar fórmulas elegantes, cortas y legibles (así como dominar otras características avanzadas), por fuerza debe dominar el tema de los nombres.

Trabajar con direcciones de celda o de rango en una fórmula, puede, y de hecho es, confuso. Para evitar esta confusión, podemos simplemente nombrar estas direcciones o subfórmulas. Un nombre es simplemente un alias que le ponemos a un rango, o a una fórmula. Por ejemplo, en la siguiente tabla:

Para calcular las ventas totales del sector Norte, usamos la fórmula:
=SUMA(B2:B13)
Ahora, definamos un nombre, digamos "vtas_norte" al rango B2:B13. Para ello, simplemente seleccionemos dicho rango, y en la barra de nombres, situada a la izquierda de la barra de fórmulas,

escribimos "vtas_norte" (sin comillas) y damos Enter.
Una vez que hemos definido nuestro nombre, podemos sustituir la fórmula anterior por la siguiente:

=SUMA(vtas_norte)
Esta es una fórmula más clara que la anterior ¿No hay gran diferencia? Consideren entonces esta fórmula con la cual me topé recientemente:
=MIN(S9,U9)*0.7+BUSCARV(B27,B2:C17,8,FALSO)*BUSCARV(AG27,D2:D17,3,VERDADERO)*(1-T27)+SI(RESIDUO(REDONDEAR.MAS(MES(B4)/3,0), 3)=0, SUMA(AO9:AY9)-AI9-AJ9)
Pueden imaginar la cantidad de tiempo que perdí descubriendo que es lo que hace esta fórmula. Si el autor hubiera utilizado nombres, entonces la fórmula podría haber quedado de esta manera:
=anticipo+comision_renovacion+SI(es_fin_trimestre, pendiente-descuentos)
Además de mejorar la legibilidad, el escribir nombres en lugar de rangos de celdas, hace menos propensas a errores nuestras fórmulas. Otra de las ventajas es que podemos ir rápidamente a un rango nombrado seleccionando su nombre correspondiente en la barra de nombres.

En Excel, podemos definir o crear un nombre. La diferencia es que al definir podemos dar el nombre que queramos al rango. Al crear nombres, podemos usar texto existente (por ejemplo, encabezados de columna) como nombres. Para definir un nombre, seguimos el procedimiento indicado al principio, o bién, seleccionamos el rango en cuestión, y damos Insertar - Nombre - Definir (o Ctrl + F3), lo que nos lleva al diálogo Definir nombre:

En el cuadro Nombres en el libro, escribimos el nombre que elijamos. En el cuadro Se refiere a: nos cercioramos que el rango sea el correcto. En caso de que queramos seguir definiendo nombres, damos clic en el botón Agregar; en caso contrario, damos Aceptar. Si lo que queremos es nombrar una fórmula, solo podemos hacerlo a través de este cuadro (ya no como al principio). Para ello, en el cuadro Se refiere a: escribimos la fórmula correspondiente.

Para crear un nombre, seleccionamos el rango que queremos nombrar, junto con el rango que queremos usar como rótulos de nombre. Si usamos la tabla de al principio, seleccionamos el rango A1:E13. A continuación, vamos a Insertar - Nombre - Crear...:

Indicamos en donde están los rótulos que queremos utilizar. En nuestro caso, seleccionamos Fila superior (y columna izquierda, si lo deseamos) y aceptamos el cuadro de diálogo. Con esto, se habrán creado cuatro nombres: Norte, Sur, Occidente y Oriente (mas otros doce, uno por mes, si seleccionamos Columna izquierda).
Para utilizar nuestros nombres en fórmulas, en modo Edición presionamos F3 y seleccionamos el nombre deseado, o lo escribimos directamente en la fórmula.
Continuamos en la siguiente nota.

Monster formulas are not cool

Usualmente, conforme vamos progresando en el conocimiento y dominio de funciones en Excel, tenemos el pleno convencimiento de que elaborar fórmulas sumamente complejas y enormes es una forma de demostrar el "gran nivel" que tenemos en Excel. Craso error. Ya hemos hablado anteriormente de lo difícil y francamente doloroso que puede ser el analizar y entender una de estas monster formulas. Adicional a esto, si vamos a compartir nuestro archivo con otra u otras personas más, no hay absolutamente ninguna necesidad de complicarles ni complicarnos la existencia. Tampoco hay razón para perder tiempo explicando cómo funcionan o qué hacen nuestras fórmulas. Veamos por ejemplo, esta fórmula:

=SI(Y(ESNOD(COINCIDIR(D1559,Cuentas!$B$2:$B$924,0)),ESNOD(COINCIDIR(D1559,Cuentas!
$D$2:$D$698,0))),D1559,SI(ESNOD(COINCIDIR(D1559,Cuentas!$B$2:$B$924,0)),BUSCARV(
D1559,Cuentas!lista2,2,FALSO),BUSCARV(D1559,Cuentas!lista1,2,FALSO)))

Tratar de interpretar esta fórmula puede resultar más aburrido que bailar entre hermanos.

Es por esto que resulta una mucho mejor práctica utilizar unas cuantas fórmulas intermedias, que combinarlas todas en una ilegible y poco flexible fórmula jurásica. Excepto si utilizamos más de 256 columnas o más de 65 536 filas en nuestra hoja, lo cual es poco problable, agregar unas cuantas filas o columnas más no debe representar mayor problema. Si bien es cierto que las mega fórmulas reducen el tiempo de cálculo de la hoja (y del libro), para la gran mayoría de modelos esta diferencia no es relevante. Una vez que hallamos terminado de editar las fórmulas, algo que incluso puede ser más rápido que elaborar una fórmula jurásica, podremos ocultarlas para evitar saturar visualmente nuestro modelo.

Si además de lo anterior, no resultara cómodo leer los cálculos, es porque necesitamos ser un poco más organizados. Una hoja hoja de cálculo debe estar organizada de forma tal que queden delimitadas, lo más claramente posible, las áreas de resumen de información, datos de entrada, cálculos y tablas de información. Las dos primeras, resumen y datos de entrada, deben estar en la parte superior de la hoja, después nuestra tabla de cálculo y al final las tablas de datos. En la tabla de cálculo, las fórmulas deben fluir de izquierda a derecha, de arriba hacia abajo. En otras palabras, una fórmula solo debe refererirse a celdas situadas a la izquierda o por arriba de ella.

Otra posibilidad es destinar una hoja exclusivamente para cálculos y después, en una hoja de resumen, referirnos a los resultados que nos interesen. Una vez comprobadas las fórmulas, podemos ocultar esta hoja.

De esta forma podemos aumentar la legibilidar y elegancia de nuestros libros. Y podríamos mejorar aún más la legibilidad utilizando nombres y fórmulas nombradas, pero eso, eso ya es otra historia...

El extraño caso del vínculo fantasma

Cuando abrimos un archivo Excel que contiene vínculos a otro u otros archivos, vemos este famoso cuadro de diálogo:


Con lo cual Excel nos recuerda la existencia de dichos vínculos. Si queremos "romper" todos los vínculos, podemos usar el menu Edición - Vínculos:

Al hacerlo (romper todos los vínculos), veremos que, obviamente, el submenú Edición - Vínculos estará deshabilitado ya que no hay vínculos que mostrar:


Sin embargo hay ocasiones en las que, a pesar de haber eliminado todos los vínculos del libro, sigue apareciendo aquel mensaje. De hecho, puede aparecer incluso ¡si nunca hemos insertado ningún vínculo en el libro! ¿Por qué? ¿Cómo evitar definitivamente este mensaje?

En Excel, las celdas de una hoja de cálculo no son el único lugar donde puede existir un vínculo. Estos vínculos fantasma pueden producirse principalmente por dos razones:

1. Si utilizamos nombres, y hemos eliminado el archivo o la celda a la que se refieren. Para comprobarlo, revisamos nuestra lista de nombres con Insertar - Nombre - Definir. Si alguno de estos nombres tiene un error #REF en su fórmula, lo eliminamos.

2. Si utilizamos gráficas en nuestro archivo, y su rango de origen está en otro archivo. Para comprobarlo, seleccionamos una a una las series de datos de nuestras gráficas, y revisamos su correspondiente fórmula. Si alguna de ellas se refiere a algún archivo externo, la eliminamos, o bién, copiamos la información respectiva al archivo actual y cambiamos la referencia en la fórmula.

En caso de que tengamos una gran cantidad de nombres o series de datos en nuestras gráficas, podemos recurrir a alguna macro que haga la eliminación por nosotros. Con la ventaja de que podemos guardar esta macro como una macro "personal" que podremos usar en todo momento.

Caso cerrado.

Desvincular una gráfica de sus datos de origen

A propósito de la nota sobre resolver una fórmula paso a paso, en la que aprendimos a convertir una fórmula en su resultado utilizando la tecla F9, les traigo este otro tip:


En ocasiones, al estar trabajando con gráficas, nos damos cuenta que solo las necesitamos para una presentación o para imprimirlas, y que por lo tanto, son gráficas estáticas. Es decir, el rango de datos de origen nunca va a cambiar, solo estará ocupando espacio en nuestro libro. Podríamos llevar una vida normal si desvinculáramos la gráfica de los datos y elimináramos estos.

Supongamos la siguiente gráfica:


Para desvincularla de su rango de origen, procedemos como sigue:

1. Seleccionamos la serie de datos (o una de las series de datos) de nuestra gráfica. Con esto, podremos ver, en la barra de fórmulas, que Excel representa una serie de datos con una fórmula, utilizando la función SERIES:

=SERIES(Hoja1!$B$1;Hoja1!$A$2:$A$20;Hoja1!$B$2:$B$20;1)
2. Convertimos los argumentos de dicha fórmula en valores. Seleccionamos primero (en la barra de fórmulas) el segundo argumento de la fórmula y presionamos F9. Con esto la fórmula quedará como sigue:

=SERIES(Hoja1!$B$1;{"Subtech de Mexico SA de CV";"TELECONFERENCE GLOBAL SERV";"UNISIA MEXICANA S.A. DE C.";"Vitech S.A de C.V.";"Vitech S.A de C.V.";"Vitech S.A de C.V.";"Walbridge de México, S.A. ";"Mexico Analytica";"Carolina Yaday Perez Hermo";"Autodesk De Mexico, S.A. D";"Grupo Jardín Guadalupano";"Hotel Fiesta Americana";"Servicios Integrales en Co";"Transportes Escolares y de";"Urvina Servicios Internaci";"Applied Biosystems";"Corporacion Financiera Int";"Adelantus";"Adelantus"};Hoja1!$B$2:$B$20;1)

Excel ha convertido el argumento a su correspondiente constante matricial (o matriz de constantes).

3. Repetimos los mismos pasos con el tercer argumento. La fórmula queda:

=SERIES(Hoja1!$B$1;{"Subtech de Mexico SA de CV";"TELECONFERENCE GLOBAL SERV";"UNISIA MEXICANA S.A. DE C.";"Vitech S.A de C.V.";"Vitech S.A de C.V.";"Vitech S.A de C.V.";"Walbridge de México, S.A. ";"Mexico Analytica";"Carolina Yaday Perez Hermo";"Autodesk De Mexico, S.A. D";"Grupo Jardín Guadalupano";"Hotel Fiesta Americana";"Servicios Integrales en Co";"Transportes Escolares y de";"Urvina Servicios Internaci";"Applied Biosystems";"Corporacion Financiera Int";"Adelantus";"Adelantus"};{100;70.48;95.89;25;68.29;97.17;79;85.78;0;0;70.68;0;68.35;25;25;0;0;89.21;25};1).

4. El primer argumento también lo podemos convertir a su correspondiente valor, o bién, lo podemos eliminar de la fórmula, ya que es opcional. Presionamos Enter quedando así la fórmula final:
=SERIES(;{"Subtech de Mexico SA de CV";"TELECONFERENCE GLOBAL SERV";"UNISIA MEXICANA S.A. DE C.";"Vitech S.A de C.V.";"Vitech S.A de C.V.";"Vitech S.A de C.V.";"Walbridge de México, S.A. ";"Mexico Analytica";"Carolina Yaday Perez Hermo";"Autodesk De Mexico, S.A. D";"Grupo Jardín Guadalupano";"Hotel Fiesta Americana";"Servicios Integrales en Co";"Transportes Escolares y de";"Urvina Servicios Internaci";"Applied Biosystems";"Corporacion Financiera Int";"Adelantus";"Adelantus"};{100;70.48;95.89;25;68.29;97.17;79;85.78;0;0;70.68;0;68.35;25;25;0;0;89.21;25};1)

Ahora podemos eliminar el rango de datos de origen sin ningún temor. La única manera de modifcar esta gráfica es arrastrando libremente cada punto de la serie o bién, escribiendo el correspondiente valor directamente en la fórmula. Si queremos cometer un fraude millonario, arrastramos todos los puntos al valor máximo.
Cabe aclarar que este procedimiento solo funciona si nuestras series tienen un número pequeño de datos o puntos (aprox. 50, dependiendo del tamaño de la matriz resultante). Si la matriz de valores resultara muy larga, obtendriamos este mensaje al presionar F9:

It's friday...

Earl and Bubba, two guys from Elbert County, Georgia, are quietly sitting in a boat fishing, chewing tobacco and drinking beer when suddenly Bubba says:

-I think I'm going to divorce my wife. She hasn't spoke to me in over 2 months.

Earl spits, sips his beer and after several minutes, says:

-You better think it over, Bubba. Women like that are hard to find.

It's friday...

A man appeared before St. Peter at the Pearly Gates.

St. Peter ask:

-Have you ever done anything of particular merit?

-Well, I can think of one thing. - the man offered.

-On a trip to the Black Hills of South Dakota, I came upon a gang of bikers who were threatening a young woman. I directed them to leave her alone, but they wouldn't listen. So I approached the largest and most heavily tattooed biker and smacked him in the face, kicked his bike over, ripped out his nose ring, and threw it on the ground. I yelled: 'Now, back off, or I'll kick the shit out of all of you!'

St. Peter was impressed.

-When did this happen?

-Couple of minutes ago.