Documente Academic
Documente Profesional
Documente Cultură
inShar e
En un artculo anterior mostr cmo calcular el tiempo transcurrido entre dos fechas pero en dicho ejemplo utilizaba solamente una unidad de tiempo, ya sea que la diferencia la obtena en aos, o en meses, o en das, pero nunca mostr como hacer una combinacin de todos ellos.
La funcin SIFECHA
En este ejemplo volveremos a utilizar la funcin SIFECHA, as que si no ests familiarizado con esta funcin te sugiero que leas el artculo antes de continuar y pongas especial atencin a los diferentes valores que podemos indicar en el tercer argumento de dicha funcin. En la siguiente imagen puedes observar el resultado que devuelve la funcin SIFECHA al utilizar las mismas fechas pero con diferentes valores para su tercer argumento:
Cuando utilizamos el argumento y obtenemos la diferencia en aos entre dos fechas. Al utilizar el argumento ym le indicamos a la funcin SIFECHA que obtenga la diferencia en meses pero como si ambas fechas fueran del mismo ao y por eso obtenemos como resultado el valor 6 que es la diferencia entre el mes 01 y el mes 07. La ltima frmula utiliza el argumento md para pedir la diferencia en das pero suponiendo que las fechas tienen el mismo mes (y ao) y por lo tanto la frmula devuelve el valor 7 que es precisamente la diferencia entre el da 14 y el da 21. Los resultados de estas tres frmulas son los que nos dan la diferencia en aos meses y das entre dos fechas y solo nos restar concatenar los resultados de cada una de ellas para generar una cadena de texto que muestre el resultado final.
Lo nico que he hecho para crear esta frmula es concatenar los resultados de las frmulas mostradas anteriormente y adems insertar las palabras aos, meses y das para poder diferenciar entre cada uno de los resultados. Observa el comportamiento de esta frmula al utilizarla con varias fechas:
Para evitar que la frmula muestre esos valores en cero debemos agregar la funcin SI para que nos ayude a hacer la validacin. La frmula que suprime los valores en cero es la siguiente:
=SI(SIFECHA(A2,B2,"y")=0,"", SIFECHA(A2,B2,"y") & " aos ") & SI(SIFECHA(A2,B2,"ym")=0,"",SIFECHA(A2,B2,"ym") & " meses ") & SI(SIFECHA(A2,B2,"md")=0,"",SIFECHA(A2,B2,"md") & " das")
Para una persona que haya nacido el 20/10/1980 y sabiendo que la fecha de hoy es 15/08/2013, la frmula devolver el siguiente resultado:
La funcin SIFECHA
inShar e
La funcin SIFECHA es una funcin en Excel a la cual no tenemos acceso desde el catlogo de funciones y sin embargo ha estado presente en las ltimas 7 versiones del programa incluyendo la versin 2010 de Excel. Esta funcin nos ayuda a obtener la diferencia entre dos fechas y adems nos permitir elegir el tipo de dato que deseamos como resultado y que pueden ser das, meses o aos. La sintaxis de la funcin SIFECHA es la siguiente:
=SIFECHA(fecha1, fecha2, tipo)
El primero y segundo argumentos son fechas en donde la fecha1 tiene que ser menor que fecha2. Dicho de otra manera, la fecha2 debe ser la fecha ms reciente. Si estos parmetros se especifican al revs, entonces obtendremos un error del tipo #NUM! El tercer argumentos de la funcin SIFECHA es de suma importancia porque es donde especificaremos la unidad de medicin de tiempo que deseamos utilizar. A continuacin la tabla de posibles valores para este tercer argumento:
Valor d m y yd ym Significado Descripcin
Das
Meses
Aos
Nmero de das entre la fecha1 y la fecha2 donde ambas fechas tie md Das excluyendo meses y aos mismo ao.
Si las fechas que vas a comparar tienen el mismo ao, puedes utilizar los argumentos yd y ym:
El ltimo argumento md es utilizado en caso de que tengas dos fechas tanto del mismo mes como del mismo ao. Aunque existen varias alternativas de argumentos para la funcin, recomiendo utilizar los argumentos [d, m, y] porque son los que funcionan correctamente sin importar el ao o mes de las fechas. Por ltimo debo mencionar que si ests utilizando la versin en ingls de Excel, encontrars esta funcin con el nombreDATEDIF y su funcionamiento es exactamente igual al mostrado en este artculo. El uso de la funcin SIFECHA es de gran utilidad especialmente para obtener las diferencias en meses o aos entre dos fechas ya que dicho clculo requiere de mucha pericia para ejecutarlo correctamente debido a las diferencias en el nmero de das que tiene cada mes del ao.
Calcular la diferencia entre dos fechas en Excel es algo muy sencillo. En este artculo mostrar cmo calcular ese tiempo transcurrido entre ambas fechar y presentar el resultado en diferentes unidades de tiempo como aos, meses, semanas, etc. Supongamos que tenemos la fecha de nacimiento de una persona y queremos calcular el tiempo que ha vivido hasta el da de hoy. Observa la siguiente imagen:
Tiempo en semanas
Como puedes observar el clculo de das es la parte central para el resto de clculos y las semanas no son la excepcin ya que las podemos obtener fcilmente realizando una simple divisin: =A8 / 7
Das laborables
El clculo de das laborales entre dos fechas ya no lo podemos realizar con una simple operacin aritmtica, pero afortunadamente existe la funcin DIAS.LAB la cual realiza el clculo por nosotros, solamente es necesario especificar ambas fechas como los argumentos de la funcin y Excel nos devolver el resultado correcto: =DIAS.LAB(B2, B3)
Meses y aos
Obtener los meses es una tarea un tanto ms complicada, porque los meses no tienen la misma cantidad de das. Lo mismo sucede con los aos ya que tenemos los aos bisiestos los cuales tienen un da adicional. Sin embargo Excel provee de una funcin que nos ayuda con este clculo, pero debo advertirte que sta no es una funcin tradicional, de hecho no la podrs encontrar en la documentacin de Excel y sin embargo la podremos utilizar. La funcin es conocida como la funcin SIFECHA y aunque en este artculo no entrar en los detalles de sta funcin observa cmo me ayuda a obtener los meses transcurridos entre dos fechas:
Espera el siguiente artculo donde hablar con mucho ms detalle sobre la funcin SIFECHA la cual ha permanecido oculta por mucho tiempo y an sigue presente en Excel 2010.
Fechas en Excel
inShar e
Excel almacena una fecha como si fuera un nmero entero. Al utilizar un sistema como ste, Excel puede sumar, restar y comparar fcilmente las fechas sin necesidad de hacer alguna conversin ni clculo especial. Por ejemplo, la fecha 1/1/2000 est representada por el nmero de serie 36526 y la fecha 05/10/2000 tiene asignado el valor 36804. Como puedes imaginar, al realizar una operacin con fechas se utiliza su nmero de serie para facilitar las operaciones.
La funcin FECHA
Finalmente mencionar la funcin FECHA la cual nos ayuda a obtener el nmero de serie que le corresponde a una fecha dados el da, el mes y el ao.
Esta funcin es de gran utilidad para convertir datos a un formato fecha en caso de que tengas el da, mes y ao en columnas separadas. Una vez convertidos al tipo de dato adecuado se podrn hacer operaciones con las fechas sin dificultad alguna.
La funcin SUMAR.SI nos permite sumar valores que cumplen con cierta condicin. Si necesitas sumar valores entre dos fechas la condicin especificada en la funcin ser de gran relevancia para obtener el resultado deseado. Supongamos la siguiente tabla de datos:
Quiero sumar los valores que estn entre las fechas 4 de enero de 2011 y 10 de enero de 2011. Antes de escribir la frmula explicar el razonamiento que hay detrs de ella. El resultado final lo obtendr al realizar una resta de dos sumas, es decir, sumar todos los valores que sean menores o iguales al 10 de enero de 2011 y a ese resultado le restar la suma de los valores menores al 4 de enero de 2011. Te confundi mi explicacin? Observa la siguiente imagen:
La columna A en azul ilustra las filas que se sumarn con la primera frmula, es decir, aquellos valores que sean menores o iguales al 10 de enero de 2011. La columna B en rojo son las filas que se sumarn en la segunda operacin y que se restarn del primer resultado para obtener el total deseado el cual est ilustrado por las filas marcadas en verde en la columna B.
La funcin FECHA juega un papel importante en la condicin especificada porque a travs de ella podemos obtener el valor adecuado para realizar la comparacin. Este ejemplo lo divid en varias celdas (y frmulas) para poder explicar adecuadamente el procedimiento, sin embargo puedes hacer todo el clculo en una sola celda.
Qu hace?
Suma los valores de un rango siempre y cuando cumplan con las condiciones especificadas.
Sintaxis
SUMAR.SI(rango, condicin, [rango_suma])
rango (Obligatorio): El rango de celdas a las que se le aplicar la condicin de suma. condicin (Obligatorio): La condicin que se debe de cumplir para ser tomado en cuenta para la suma. rango_suma (Opcional): El rango de celdas que ser sumado. Si es omitido se sumarn los valores del primer argumento.
Ejemplos
SUMAR.SI(A1:A5,>3) = Suma los valores en A1:A5 que sean mayores a 3 SUMAR.SI(A1:A5,>3,B1:B5) = Suma los valores en B1:B5 siempre y cuando los valores en A1:A5 sean mayores a 3
La funcin SUMAR.SI en Excel nos permite hacer una suma de celdas que cumplen con un determinado criterio y de esta manera excluir aquellas celdas que no nos interesa incluir en la operacin.
Rango (obligatorio): El rango de celdas que ser evaluado. Criterio (obligatorio): La condicin que deben cumplir las celdas que sern incluidas en la suma. Rango_suma (opcional): Las celdas que se van a sumar. En caso de que sea omitido se sumaran las celdas especificadas en Rango.
El Criterio de la suma puede estar especificado como nmero, texto o expresin. Si es un nmero har que se sumen solamente las celdas que sean iguales a dicho nmero. Si el criterio es una expresin podremos especificar alguna condicin de mayor o menor que. Si el Criterio es un texto es porque seguramente necesito que se cumpla una condicin en cierta columna que contiene datos de tipo texto pero realizar la suma de otra columna que tiene valores numricos. Todos estos casos quedarn ms claros con los siguientes ejemplos.
Recuerda que la funcin SUMAR.SI no realiza una cuenta de las celdas que contienen el nmero 5, de lo contrario el resultado habra sido 2. La funcin SUMAR.SI encuentra las celdas que tienen el nmero 5 y suma su valor. Ya que las celdas A2 y A7 cumplen con la condicin establecida se hace la suma de ambas celdas lo cual da el nmero 10 como resultado. Ahora cambiar la condicin a una expresin y sumare aquellas celdas que sean menores a 3. Observa el resultado de esta nueva frmula.
Ventas de un vendedor
Ahora utilizaremos un criterio en texto y el tercer argumento de la funcin SUMAR.SI el cual nos deja especificar un rango de suma diferente al rango donde se aplica el criterio. En el siguiente ejemplo tengo una lista de vendedores y deseo conocer el total de ventas de un vendedor especfico.
Para obtener el resultado colocar el rango A2:A10 como el rango que debe ser igual al texto en la celda F1. El tercer argumento de la funcin contiene el rango C2:C20 el cual tiene los montos que deseo sumar.
La celda F2 que contiene la funcin SUMAR.SI muestra la suma de las ventas que pertenecen a Juan y excluye el resto de celdas. Podra modificar un poco esta frmula para obtener las ventas de un mes especfico. Observa el resultado de esta adecuacin en la celda F5:
Una pregunta que recibo frecuentemente es cmo sumar y contar con varias condiciones en Excel. Cuando ests en esta situacin nuestra reaccin es utilizar las funciones SUMAR.SI y CONTAR.SI pero pronto nos damos cuenta de que no son el camino correcto. Si tienes Excel 2007 o una versin superor, entonces puedes utilizar la funcin SUMAR.SI.CONJUNTO y la funcin CONTAR.SI.CONJUNTO, de lo contrario puedes utilizar alguno de los mtodos que presento a continuacin.
La funcin SUMAR.SI funciona correctamente si quiero conocer las ventas del mes de Enero para lo cual puedo utilizar la siguiente frmula:
=SUMAR.SI(A2:A12, "Enero", D2:D12)
Sin embargo, cmo puedo sumar las ventas del mes de Enero de la regin Norte? A continuacin veremos dos alternativas para sumar con varias condiciones en Excel.
Antes de explicar esta frmula debo decir que para que funcione correctamente debemos utilizarla como una frmula matricial por lo que despus de introducirla en la barra de frmulas debemos pulsar la combinacin de teclas Ctrl + Mayus + Entrar. En la formula anterior encontrars que las condiciones se encuentran encerradas entre parntesis. La condicin (A2:A12=Enero) ser verdadera solamente cuando el valor de la columna A tenga el valor Enero. De la misma manera, la condicin (B2:B12=Norte) ser solamente verdadera precisamente cuando la celda de la columna B tenga el valor Norte. El resultado de ambas condiciones es multiplicado y recordando la lgica binaria sabemos que al multiplicar verdadero por verdadero obtendremos como resultado un valor verdadero (uno). Si cualquiera de los factores de la multiplicacin es falso obtendremos un valor falso (cero) como resultado. De esta manera, solo en caso de que ambas condiciones sean verdaderas (igual a uno) obtendremos un valor diferente a cero al realizar la multiplicacin por la columna D. Si cualquier condicin es falsa, la columna D ser multiplicada por cero y no tendr efecto alguno en la suma total. Observa el resultado de aplicar la frmula antes descrita:
Observa que las condiciones son las mismas que en la frmula anterior. La nica diferencia es que hacemos la multiplicacin de cada condicin por 1 para asegurar que tendremos valores numricos. Observa el resultado de esta funcin:
Esta frmula es parecida a la primera que revisamos con la diferencia de que no estamos haciendo la tercera multiplicacin por la columna D. Esta funcin contar las celdas que cumplen con ambas condiciones. Observa el resultado:
Para que esta frmula funcione debemos pulsar la combinacin de teclas Ctrl + Mayus + Entrar ya que debe ser una frmula matricial.
Las frmulas matriciales en Excel son una herramienta muy poderosa. Pero debo advertirte que es un concepto de Excel avanzado pero estoy seguro que con un poco de prctica pronto ser sencillo utilizarlas fcilmente.
Observa cmo en la barra de frmulas se muestran los smbolos de corchete alrededor. Pero el resultado de la funcin es 1 cmo sabemos si efectivamente se est trabajando con el arreglo de datos {1, 2, 3, 4, 5}? Para realizar esta comprobacin utilizar la funcin SUMA de la siguiente manera:
Con el resultado de la celda A1 comprobamos que la funcin fila est utilizando el arreglo de datos {1, 2, 3, 4, 5} ya que si sumas cada uno de los elementos de la matriz de datos obtenemos el valor 15. Observa la diferencia en el resultado si no utilizamos la frmula matricial:
Ya que en esta frmula no tenemos los corchetes alrededor sabemos que no es una frmula matricial y por lo tanto la funcin FILA solamente regresar el valor 1 y no habr ningn otro valor con el cual sumarlo, por lo tanto el resultado final es tambin 1. Debes de recordar que despus de editar una frmula matricial siempre debes volver a pulsar la combinacin de teclasCtrl + Mayus + Entrar de lo contrario se convertir en una frmula normal.
Observa cmo los resultados se extienden sobre al arreglo de celdas colocando un elemento del arreglo de valores en cada una de ellas. La relacin entre las celdas de esta matriz de resultados es tan fuerte que si intentas modificar alguno de sus valores Excel mostrar un mensaje:
Las funciones matriciales en Excel son tiles porque nos ayudan a realizar operaciones que no son posibles con las frmulas normales. Aunque parecen complicadas de utilizar al principio pronto comprobars que con un poco de prctica comprenders perfectamente su funcionamiento.
Quieres llegar a ser un usuario avanzado de Excel? Entonces debes aprender a utilizar las frmulas de matriz en Excel. Antes de pasar a un ejemplo te explicar lo qu es una matriz. El trmino matriz se refiere a una coleccin de datos que se encuentran en una columna o fila de Excel.
Nuestra intencin ser multiplicar los valores de la columna B por los valores de la columna C y el resultado lo colocaremos en la columna D. El ejemplo es muy sencillo pero me ayudar a demostrarte la funcionalidad bsica de las frmulas de matriz en Excel, as que pon mucha atencin.
Ahora selecciona el rango de celdas D2:D11 y en la barra de frmulas ingresa la siguiente funcin pero NO oprimas Entrar:
=B2:B11*C2:C11
Antes de oprimir cualquier tecla lee esto con atencin. Una vez que has escrito la frmula debers oprimir la combinacin de teclas CTRL + MAYUS + ENTRAR. Oprimir esa combinacin de teclas es muy importante. Despus de hacerlo Excel mostrar el siguiente resultado:
Observa cmo la frmula ha sido rodeada por {} (llaves). Eso indica que estamos haciendo uso de una frmula de matriz en Excel. Mientras tanto, toda la columna D se llen de los resultados esperados. Puedes observar el gran potencial de este tipo de frmulas? Con una sola frmula pudimos multiplicar toda la columna C por los datos de la columna D.
En el artculo Cambiar de filas a columnas mostr como cambiar los datos de una fila a una columna de manera que se muestren como ttulos de columna. Esto aplica de igual manera para rangos de celdas.
Transponer un rango
Para iniciar con este ejemplo debo seleccionar el rango de celdas que ser transpuesto y copiarlo al Portapapeles. Posteriormente hacer clic derecho sobre la celda destino y seleccionar el comando Transponer dentro de las Opciones de pegado.
Si lo nico que deseabas hacer con la matriz era intercambiar la informacin de filas y columnas o viceversa, entonces lo hemos logrado. Pero si deseas que ambas matrices permanezcan referenciadas entre ellas entonces debemos hacer la transposicin de otra manera.
La funcin TRANSPONER
En lugar de utilizar la opcin de pegado especial para transponer nuestra matriz, podemos utilizar la funcin TRANSPONERpara tener una matriz transpuesta referenciada. El procedimiento es el siguiente. Comenzamos por seleccionar el rango de celdas destino el cual deber ser del tamao inverso que el rango origen es decir, si mi rango origen es de 2 columnas por 4 filas (24), el rango destino que debo seleccionar ser de 4 columnas por 2 filas (42). Una vez seleccionado el rango destino introducimos la funcin TRANSPONER utilizando el rango origen como parmetro de la funcin.
Al terminar no pulses la tecla Entrar sino la combinacin de teclas CTRL + MAYS + Entrar. Esta combinacin de teclas nos ayudar a aplicar la frmula sobre todos los elementos de la matriz. Con esto tendremos nuestra matriz transpuesta referenciada:
Cualquier cambio realizado en la matriz origen se ver reflejado en la matriz transpuesta y de esta manera estaremos seguros de que los datos son consistentes e idnticos en ambas matrices.
La funcin SUMAPRODUCTO nos ayuda a sumar los productos de dos rangos con la nica condicin de que ambos rangos sean del mismo tamao y que tengan la misma orientacin, es decir, que ambos sean horizontales o verticales. Por ejemplo, en el siguiente ejemplo, la funcin SUMAPRODUCTO se encargar de multiplicar la cantidad vendida de cada producto por su precio y finalmente realizar la suma de todos los resultados.
En este caso, ambos rangos tienen el mismo tamao y la misma orientacin, es decir ambos son columnas (horizontales). Pero qu sucede si por alguna razn quiero realizar esta misma operacin y alguno de los rangos tiene una orientacin diferente? En el siguiente ejemplo puedes observar que los precios de los productos estn organizados a lo largo de una misma fila.
Con los datos organizados de esta manera sera imposible utilizar la funcin SUMAPRODUCTO ya que los rangos tienen orientacin diferente. Sin embargo, podemos hacer uso de otra funcin de Excel para cambiar la orientacin de uno de los rangos.
Debes notar que en la barra de frmulas se muestran dos llaves {} rodeando a la frmula y que indican que he utilizado lafuncin SUMAPRODUCTO como una frmula matricial. Estas llaves son colocadas automticamente por Excel al pulsar la combinacin de teclas CTRL+MAYUS+ENTRAR al terminar de introducir la frmula. Si para este ejemplo no utilizamos la funcin SUMAPRODUCTO como una funcin matricial, Excel devolvera un error de tipo #VALOR! De esta manera hemos utilizado la funcin SUMAPRODUCTO con dos rangos de distinta orientacin con ayuda de la funcin TRANSPONER y sin la necesidad de modificar la estructura de los datos en nuestra hoja. Por supuesto, siempre existe la opcin de que acomodes los datos manualmente para que tengan la misma orientacin y as no tener la necesidad de utilizar funciones adicionales.