Sie sind auf Seite 1von 45

Descargar el fichero: TDelementocalculado.

xlsx

E n un post anterior habíamos hablado de Campos Calculados de una Tabla

Dinámica de #Excel. Ahora vamos a ver un caso un tanto especial en el que


necesitamos calcular la variación porcentual de cierta magnitud económica entre los
años 2010 y 2011. El problema es que la información de partida no distingue entre
ambos años, sino que simplemente existe un campo (una columna) con la fecha. Lo
vamos a resolver por dos métodos. Primero emplearemos fórmulas matriciales y en
segundo lugar lo haremos creando un Elemento calculado en una Tabla dinámica.

Puede consultar el post donde hablábamos de:

Tablas dinámicas y Campos Calculados

Datos de origen (Hoja1)

Partimos de una pequeña base de datos, de únicamente dos columnas:

1. Fecha. El primer día de cada mes de los años 2010 y 2011. En total 24
registros (filas)
2. Importe. Es el valor de cierta magnitud económica. Podría se por ejemplo la
facturación de una empresa
Resolución con fórmulas matriciales

En la propia Hoja1 vamos a resolver nuestro caso aplicando una función matricial.
Para saber cómo se ha de trabajar con este tipo de funciones puede consultar el post
siguiente:

Funciones matriciales en Excel


La celda F5 es:

{=SUMA(Importe*(AÑO(Fecha)=F$4)*(MES(Fecha)=$E5))}

La fórmula está entre llaves lo que indica que es una fórmula matricial. Cuando
nosotros escribimos la fórmula no ponemos las llaves, esto lo hace Excel, al validar
la fórmula. Las fórmulas matriciales no se validan pulsando ENTER, se han de pulsar
simultáneamente las tres teclas siguientes:

CONTROL + MAYÚSCULAS + ENTER

La tecla de MAYÚSCULAS es la tecla SHIFT.

Los rangos empleados son:


 Fecha =Hoja1!$B$5:$B$28
 Importe =Hoja1!$C$5:$C$28

La fórmula se ha de copiar al rango F5:G16.

Para crear la columna H, simplemente aplicamos la fórmula que nos da la variación


porcentual entre los valores del año 2010 y los valores del año 2011, que es lo que
estamos buscando. La celda H5 es:
=+G5/F5-1

Luego se la dota con formato de porcentaje, y obtenemos un 20% que es el


incremento experimentado entre el importe del año 2010 (1.000) y el importe del
año 2011 (1.200), para el mes de enero. Se copia hacia abajo y se obtienen los
porcentajes de variación por cada mes.

Añadimos columnas para el año y el mes


(Hoja2)

No es muy ortodoxo añadir a una base de datos nuevos campos (columnas) que se
calculan con información ya contenida en la propia base de datos. Pese a ésta
recomendación general, en este caso, vamos ha añadir la columna Mes y la columna
Año, que se calculan utilizando la fórmula de Excel MES y AÑO. Estas fórmulas han
de estar aplicadas a una fecha válida nos proporcionan precisamente el mes y el año
de esa fecha.

Lo de "aplicadas a una fecha válida" es importante. Por este motivo hemos


necesitado que la columna de Fecha sea una fecha válida, y hemos tenido que tomar
el primer día de cada uno de los meses considerados. Así la primera fecha es el 1-
enero-2010, y no hubiera valido haber puesto simplemente enero-2010 sin indicar el
día. Una fecha válida debe indicar el día, el mes y el año.
En la columna B aparece la fecha en formato mmm/aaaa. Son fechas válidas ya que
aunque no veamos el día, esto es por el formato, pero la fecha está introducida
como dia-mes-año.

La celda D5 es:

=MES(B5)

La celda E5 es:
=AÑO(B5)

Resolución con Tabla Dinámica

Primero creamos una Tabla dinámica como la siguiente.

Hemos puesto el Mes en rótulos de fila, el Año en rótulos de columna y el Importe


como datos en Valores.

En Excel 2007, con el cursor situado en la tabla dinámica pinchamos arriba sobre la
pestaña "Herramientas de tabla dinámica". Luego sobre Fórmulas.
Deseamos elegir Elemento calculado pero vemos que aparece deshabilitado, en
color gris. Para que podamos tener disponible esta opción debemos situar el cursor
del ratón exactamente sobre la celda B4 o C4 de la tabla dinámica que es donde se
encuentran los indicadores de los años 2010 y 2011.

Ahora si podemos insertar un Elemento calculado.

Aparecerá la ventana donde podemos construir nuestro elemento calculado.

Al elemento calculado le denominaremos Var.% ya que representará la variación


porcentual. La fórmula que pondremos es:
='2011'/ '2010'-1

Pero no debemos escribir la fórmula tecleando los años sino eligiendo los Elementos
con el ratón. Elegimos el elemento del año 2011, pulsamos luego sobre el símbolo de
dividir (/), pulsamos sobre el elemento del año 2010, y finalmente restamos uno.

Con ello se genera la columna correspondiente al elemento calculado Var.%. La


nueva columna se formatea en formato de porcentaje y tendremos ya creada
nuestra Tabla dinámica con elemento calculado.

Crear lista de fórmulas

Podemos crear una lista con todas las fórmulas creadas en la tabla dinámica tanto de
elementos calculados como de campos calculados. Para ello, sitúe el cursor en la
tabla dinámica y elija 'Herramientas de tabla dinámica', Fórmulas, y 'Crear lista de
fórmulas'.
Esto genera una nueva hoja en la que obtendremos el listado solicitado.

Bajo este listado aparece el siguiente comentario.

Notas:
 Cuando una celda se actualiza con más de una fórmula, el valor lo establece
la fórmula con la última orden de resolución.
 Para cambiar el orden de resolución de varios elementos o campos
calculados, en la ficha Opciones, en el grupo Herramientas, haga clic en
Fórmulas y, a continuación, seleccione Orden de resolución.

Publicado por Adolfo Aparicio a las 08:55 5 comentarios


Etiquetas: Tabla Dinámica

MIÉRCOLES, 15 DE JUNIO DE 2011

Rango Dinámico

Descargar el fichero: RangoDinamico.xls


S i tenemos una tabla que cambia de tamaño nos vemos obligados a tener que

redefinir el rango de los datos que queremos incluir en un gráfico o en una tabla
dinámica. Si la tabla contiene un número de filas que varían con frecuencia es
bastante tedioso tener que cambiar el rango de datos para el gráfico, y lo mismo con
la tabla dinámica. Vamos a exponer un método por el cual no tendrá que
preocuparse por el tamaño de su tabla ya que tanto el gráfico como la tabla
dinámica tomará el tamaño necesario de forma automática.

En nuestro fichero de ejemplo disponemos de cuatro columnas con datos generados


de forma aleatoria. Si queremos ampliar el número de filas de la tabla lo único que
debemos hacer es copiar su última fila hacia abajo. Para reducir su número de filas
borraremos, por abajo, tantas como deseemos.

Inicialmente la tabla tiene 20 registros (filas de datos).


Deseamos crear un gráfico como el siguiente donde se muestren los 20 puntos que
corresponden a los 20 datos de Facturación a lo largo del tiempo. Hemos añadido
una línea de tendencia (recta de regresión).

Si queremos que el gráfico ajuste el número de puntos a los que contenga la tabla
independientemente de su tamaño y de forma automática debemos definir los
rangos que tomará el gráfico. La definición de rangos será un tanto curiosa ya que no
nos limitaremos a seleccionar el área que deseamos asociar al rango sino que
trabajaremos con fórmulas.

Vamos a utilizar la función DESREF y la función CONTARA de forma anidada.

Función DESREF

La función DESREF es una función que puede emprearse de dos maneras:

1. Utilizando los 3 primeros argumentos permite extraer un valor de una celda


que se encuentre en una tabla. Para ello debemos indicar desde que celda
debemos comenzar a contar (punto de partida), indicando el número de filas
hacia abajo que nos hemos de desplazar, y el número de columnas a la
derecha que nos debemos mover. Esta forma de emplear DESREF no es
matricial.
2. Utilizando los 5 argumentos de la función. En este caso la función es matricial
y permite extraer un bloque de celdas. Se ha de indicar el punto de partida,
la celda de la esquina superior izquierda y las dimensiones del bloque.

La sintaxis de DESREF en su versión matricial es:

=DESREF(ref;filas;columnas;alto;ancho)

donde

 ref es la celda desde la que partimos. Es el punto de partida (Km. 0). Para los
que conozcan Madrid es el kilómetro cero de la Puerta del Sol
 filas es el número de filas hacia abajo que nos hemos de desplazar para llegar
a la celda que marca la equina superior izquierda del rango que deseamos
extraer. Si las filas son negativas nos movemos hacia arriba, siempre tomando
como punto de partida nuestro kilómetro cero

 columnas es el número de columnas a la derecha que nos hemos de desplazar


para llegar a la celda que marca la esquina superior izquierda del rango que
deseamos extraer. Si las columnas son negativas indica que nos movemos a la
izquierda de nuestro kilómetro cero

 alto es el número de filas que contiene el rango que deseamos extraer

 ancho es el número de columnas que contiene el rango que deseamos extraer

Si queremos utilizar esta fórmula debemos considerar que se trata de una fórmula
matricial y que por tanto se han de dar los tres pasos que siempre requieren este
tipo de fórmulas:
1. Paso 1. Primero debemos seleccionar el rango donde la fórmula matricial
dejará su resultado. Esto es importante, ya que muchas fórmula matriciales
no dejan su resultado un una sola celda, sino en un rango de celdas. Este
primer paso indica que este rango debemos seleccionarle.
2. Escribimos la fórmula matricial de que se trate. En este caso sería DESREF si
queremos probar con ella.
3. Para validar la fórmula no pulse ENTER. Se deben pulsar simultáneamente las
tres teclas siguientes: CONTROL + MAYUSCULAS + ENTER

Función CONTARA

Hablemos ahora de la función CONTARA. Para contar existen dos funciones:


 CONTAR: cuenta las celdas numéricas del rango que indiquemos
 CONTARA: Cuenta todo, números y texto

Aplicadas estas funciones sobre la columna E, donde se encuentra la facturación los


resultados obtenidos son:

 =CONTAR(E:E) da como resultado 20, que son los registros de la tabla


 =CONTARA(E:E) da como resultado 21, que son los registros numéricos más
la cabecera

Creación de Rangos

Vamos a crear un nombre de rango denominado laFactura que incluya todos los
datos de facturación. Incluirá desde la celda E3 hacia abajo hasta el final de la
columna E. Inicialmente el rango será E3:E22 ya que la tabla inicialmente tiene 20
registros. Pero al indicar el rango que se asocia a ese nombre de rango lo haremos
con fórmula para que sera automático y se ajuste a la longitud de la columna E que
exista en cada momento.

La fórmula para el nombre de rango laFactura es:

=DESREF(Hoja1!$E$2;1;0;CONTARA(Hoja1!$E:$E)-1;1)

Ahora vamos a crear el nombre de rango laFecha para se ajuste al rango que marca
los datos de fecha de la columna B, desde la celda B3 hasta la última fecha que se
encuentre en la columna B.

La fórmula para el nombre de rango laFecha es:


=DESREF(Hoja1!$B$2;1;0;CONTARA(Hoja1!$B:$B)-1;1)

Los dos rangos anteriores se utilizaran para crear el gráfico dinámico. Para la tabla
dinámica que crearemos posteriormente vamos a definir el nombre de rango Tabla
que abarca toda la tabla incluida la cabecera, y las cuatro columnas que la
constituyen.

La fórmula para el nombre de rango Tabla es:

=DESREF(Hoja1!$B$2;0;0;CONTARA(Hoja1!$E:$E);4)

Nombrar rangos

Ahora debemos nombrar los rangos.

 En Excel 2003 la forma ortodoxa de definir un rango es seleccionando


Insertar, Nombre, Definir.
 En Excel 2007 debemos ir a la pestaña de Fórmulas y pulsar sobre la opción
Administrador de Nombres.
Gráfico Dinámico

Creamos un gráfico de tipo Dispersión del tipo Dispersión solo con marcadores.

Indicamos el origen de los datos indicando los nombres de rango. Para el eje X
utilizamos el rango laFecha, y para el eje Y utilizamos el rango laFactura.
Importante

Al indicar el rango para el eje X e Y debemos indicar no solo el nombre del rango
sino también el nombre del fichero, sin olvidar el signo de admiración (!) y el signo
igual al inicio de la expresión (=).

Para los valores X de la serie debemos escribir exactamente lo siguiente:

=RangoDinamico.xls!laFecha

Para los valores Y de la serie debemos escribir exactamente lo siguiente:

=RangoDinamico.xls!laFactura

Si copiamos la última fila de la base de datos hacia abajo hasta la fila 102 habremos
obtenido 100 registros que automáticamente quedarán representados en el gráfico
sin necesidad de que toquemos los rangos. El resultado podría ser el siguiente.
Observamos que los puntos representados en el gráfico han
aumentado automáticamente pasando de los 20 iniciales a los 100 que ahora.

Tabla Dinámica

Vamos a crear una Tabla Dinámica utilizando los 20 datos iniciales de nuestra tabla.

Al confeccionar la Tabla dinámica nos piden el rango de los datos y en ese momento
indicaremos el nombre de rango Tabla que previamente hemos creado.

En Configuración de campo elegimos Cuenta.


Obtenemos una Tabla Dinámica similar a la siguiente, donde el número de elementos
totales es de 20.

Al ampliar el número de filas de la tabla hasta 100 filas seguimos viendo en la Tabla
dinámica que el número de elementos es de 20. Para poder ver los 100 elementos
debemos actualizar la Tabla dinámica. Esto se consigue pulsando con el botón
derecho del ratón sobre la propia Tabla dinámica y eligiendo en el
menú contextual la opción Actualizar.
Tras actualizar la Tabla dinámica podemos observar que ahora son 100 los datos
considerados.

Publicado por Adolfo Aparicio a las 01:10 11 comentarios


Etiquetas: gráficos, Tabla Dinámica

LUNES, 13 DE JUNIO DE 2011

Convertir una Tabla de doble entrada en una base de datos

Descargar el fichero: Cronograma.xlsx


V amos a convertir una tabla de doble entrada (con cabeceras de fila y

columna) en una auténtica base de datos, esto es, una tabla donde la información se
organiza por campos (columnas). Para ello utilizaremos Tablas Dinámicas con Rangos
de Consolidación Múltiple. Posteriormente, partiendo de la base de datos,
resumiremos la información utilizando nuevamente Tablas Dinámicas, o la utilidad
que tiene Excel denominada Subtotales.

Publicado por Adolfo Aparicio a las 08:57 2 comentarios


Etiquetas: Tabla Dinámica

MIÉRCOLES, 8 DE JUNIO DE 2011

Tablas Dinámicas y Campos calculados

Descargar el fichero: TDcampocalculado.xlsx

L as Tablas Dinámicas han supuesto la revolución en Hojas de Cálculo de los

últimos años. Permiten generar informes rápidos y flexibles. Si usted llega a conocer
bien su funcionamiento puede cambiar radicalmente la gestión de su departamento
o unidad de negocio.

En este artículo vamos a crear una Tabla Dinámica partiendo de una base de datos.
En la tabla dispondremos de los costes de diferentes departamentos de la empresa
para el año 2010 y la previsión para 2011. Crearemos un campo calculado que nos
permita observar el incremento de cada departamento en estos años.
La base de datos de partida es sencilla.

Coste por Proyecto y Departamento

En Excel 2007 vamos al menú Insertar y luego Tabla Dinámica. Siguiendo unos
sencillos pasos llegamos a crear una tabla dinámica como la que se muestra en la
siguiente imagen:

Disponemos de los costes del año 2010 y la previsión para 2011 por cada uno de los
departamentos. Los cuatro proyectos se han establecido como filtro de página en la
parte superior de la tabla dinámica.

Ahora deseamos disponer de una columna más que nos indique la variación
porcentual experimentada por los costes entre los años 2010 y 2011. Este objetivo se
podría lograr por varios métodos:

1. Escribiendo en la celda D5 la fórmula: =C5/B5-1. Esta fórmula nos da el


incremento en tanto por uno. Para verlo en porcentaje basta pulsar sobre el
icono de porcentaje (%).
2. Establecer la fórmula anterior pero vinculando sobre las celdas C5 y B5. En
este caso veremos que la fórmula utiliza la función
IMPORTARDATOSDINAMICOS. Esta forma de trabajar tiene la ventaja de que
ésta función apunta a la tabla dinámica y por tanto no perdemos el vínculo
dinámico con la base de datos.

3. Crear un campo calculado. Este es el método que utilizaremos en este


artículo.

Creación del campo calculado

En Excel 2007 con el cursor sobre la tabla dinámica veremos arriba una nueva opción
denominada:

Herramientas de tabla dinámica

Al pulsar sobre ella se abren un nuevo menú sobre el que pulsaremos sobre
Formulas.

La imagen anterior puede diferir de la que usted pueda ver en pantalla, ya que en
Excel 2007 la cinta de opciones muestra diferentes iconos, o los muestra más o
menos resumidos en función de la resolución de su pantalla y del tamaño de ventana
que utilice.

Al pulsar sobre Fórmulas elegimos Campo calculado.

Aparece una ventana denominada Insertar campo calculado en el que crearemos la


fórmula:

=’2011′/’2010′-1
La fórmula se crea introduciendo los campos (columnas) de la tabla dinámica. En
este caso calculamos el porcentaje de variación por la clásica fórmula:

Valor Final / Valor Inicial -1

Expresión que es igual a la siguiente:

(Valor Final – Valor Inicial) / Valor Inicial

En nuestro caso los costes del año 2010 son los valores iniciales y las previsiones para
2011 son los valores finales.

Esto genera una nueva columna que denominamos Var.% que recoge la variación
porcentual de los costes entre los años 2010 y 2011. Inicialmente los valores que nos
dan están en tanto por uno y hemos de ser nosotros los que debemos dar formato a
esos valores como Porcentaje de dos decimales.
Los campos calculados son muy útiles al trabajar con tablas dinámicas y tienen la
ventaja de que no perdemos el vínculo dinámico con la base de datos.

Gráfico Dinámico

Sitúa el cursor sobre la tabla dinámica y pulsa sobre la opción que verás arriba
denominada Herramientas de tabla dinámica. Luego pulsa sobre el icono que te
permite crear un gráfico dinámico tal y como se muestra en la siguiente imagen.

Elegimos el tipo de gráfico y de forma instantánea dispondremos de un gráfico muy


flexible con muchas opciones que podemos modificar.
Ejercicio propuesto

En la Hoja3 disponemos de una base de datos con 200 registros con los siguientes
campos: Fecha, Artículo, Facturación y Unidades. Nuestro objetivo es crear una
tabla dinámica agrupada por meses y trimestres en la que introducimos un campo
calculado que nos proporcione el precio medio de venta en cada mes.

Todos los datos de la base de datos son aleatorios. Así la fecha es un valor aleatorio
del primer semestre del año 2011, y se genera con la fórmula:

=ALEATORIO.ENTRE(FECHA(2011;1;1);FECHA(2011;6;30))

Los posibles artículos son cinco y se generan aleatoriamente con la fórmula:

=ELEGIR(ALEATORIO.ENTRE(1;5);”Art1″;”Art2″;”Art3″;”Art4″;”Art5″)

En Excel 2003 y anteriores para que no de error la fórmula ALEATORIO.ENTRE


debemos haber activado el complemento de Herramientas para análisis. Esto se
puede activar en el menú Herramientas, Complementos.

Agrupando las fechas simultáneamente por meses y por trimestres obtenemos la


tabla dinámica que se muestra en la imagen.
Ahora hemos de crear el campo calculado que insertará una nueva columna en la
tabla dinámica. Pretendemos calcular el precio medio, por tanto hemos de dividir la
facturación entre el número de unidades.
La tabla dinámica que obtenemos ya incorpora el campo calculado Precio medio.

Los resultados numéricos que usted obtenga serán diferentes de los que se muestran
en la anterior imagen, esto es debido a que la base de datos trabaja con valores
aleatorios.
Podemos ver cómo cambian los valores de la tabla dinámica al actualizarla. Para ello
pulse con el botón derecho del ratón sobre la tabla dinámica y elija Actualizar.

Excel 2010

Para crear un campo calculado en Excel 2010 sigue estos pasos:


1. Partimos de los datos originales
2. Creamos la tabla dinámica pulsando sobre: Insertar, Tabla dinámica, y
diseñamos la tabla según nuestras preferencias

3. La tabla dinámica ya esta creada. Ahora nos situamos con el cursor dentro de
cualquier celda de la tabla dinámica y veremos arriba una pestaña
denominada “Herramientas de tabla dinámica”. Esta pestaña tiene dos sub-
pestañas denominadas: Opciones y Diseño. Nos situamos en Opciones.

4. Pinchamos sobre Cálculos y luego sobre Campos, elementos y conjuntos, y


finalmente pinchamos sobre Campo calculado.

5. Luego se siguen los pasos vistos en Excel 2007 ya que el proceso de creación
del campo calculado es similar.

Publicado por Adolfo Aparicio a las 10:13 4 comentarios


Etiquetas: Tabla Dinámica

VIERNES, 1 DE ABRIL DE 2011

Ordenar dentro de una Tabla Dinámica

Podemos ordenar dentro de una Tabla Dinámica por los campos de fila o columna
según orden alfabético, o incluso manualmente indicando nosotros mismos el orden
deseado. También podemos ordenar por el importe del Total General. Veamos cómo
se hacen estas tareas en Excel 2007.

Supongamos una tabla dinámica sencilla, con el importe facturado según tres
productos: verduras, carnes y lácteos. Únicamente disponemos de dos regiones:
norte y sur.

Ordenación de un campo

Pulsar con el botón derecho del ratón sobre uno de los elementos del campo
Producto. Elegir Ordenar y seguidamente elegir "Más opciones de ordenación....".
Podemos elegir entre ordenar de forma ascendente, de forma descendente o
manualmente. Si elegimos hacerlo manualmente podremos arrastrar los elementos
para reorganizarlos.

Podemos pulsar sobre el botón: "Más opciones..." y veremos la siguiente ventana.


En las opciones habitualmente tenemos marcada la opción: "Ordenar
automáticamente cada vez que se actualice el informe". Si desmarcamos esta opción
podemos ver que en el primer criterio de ordenación podemos elegir por cualquiera
de las lista personalizadas que tuviéramos creadas en nuestro Excel.
Ordenar por el Total general

Supongamos que nuestro jefe está muy interesado en ordenar por el importe del
Total General. Esto se puede hacer en orden ascendente, en orden descendente.

También podemos pulsas sobre "Más opciones de ordenación..."


Publicado por Adolfo Aparicio a las 15:48 1 comentarios
Etiquetas: Tabla Dinámica

DOMINGO, 27 DE FEBRERO DE 2011

Actualización Automática de una TD ante el recálculo de una celda

Descargar el fichero: eventocalcula.xlsm

Y a hemos hablado en un post anterior de cómo actualizar automáticamente

una TD (Tabla Dinámica) ante la variación de una celda concreta o la variación de


alguna celda que pertenezca a un rango previamente establecido. Pero en esos casos
siempre teníamos que cambiar el valor de la celda a mano. Esto es, teníamos que
escribir un valor o modificar alguno existente previamente. Al pulsar Intro es cuando
se lanzaba la macro que actualizaba la TD.

Ver el post anterior: Actualización automática de una Tabla Dinámica

En esta ocasión vamos a comentar el caso en el que no es necesario cambiar


manualmente la celda que al cambiar su valor lanza la macro, que a su vez actualiza
la TD. Esto tiene la enorme ventaja de que esa celda puede ser una fórmula que
está vinculada con otras muchas celdas que al cambiar modifican el valor de nuestra
celda objetivo, y eso desencadena la actualización de la TD. O incluso pudiera estar
la formula de esa celda objetivo apuntando a otras hojas, otros libros, o estar
tomando valores vinculados de Access u otras fuentes de datos externas. Esto es muy
importante, ya que esta automatización nos permite estar tranquilos de que la TD
esta siempre actualizada y no requiere intervención humana. Así podremos
automatizar sistemas complejos de forma completa.

Disponemos de una sencilla Base de Datos con tres campos: Comercial, Mes e
Importe. En la celda G6 sumamos toda la columna D:

=+SUMA(D:D)

Esto hace que al cambiar algún valor de esa columna, y en particular las ventas de
cada comercial (de color azul), se producirá un nuevo valor para la celda G6 (en
color verde). Esta es la celda que desencadenará que la TD se actualice.
Haga la prueba cambie el valor de cualquiera de las celdas azules y verá como se
actualiza la TD y el Gráfico Dinámico asociado.

La celda G7 es una celda auxiliar que hemos necesitado para saber si la celda verde
cambia o no.

Esta es la macro que utiliza el evento Worksheet_Calculate.

Código:

Private Sub Worksheet_Calculate()


Dim vtas_old As Double
Dim vtas_new As Double
vtas_new = Sheets("Hoja1").Range("G6").Value
vtas_old = Sheets("Hoja1").Range("G7").Value
If vtas_old <> vtas_new Then
[G7] = vtas_new
ActiveSheet.PivotTables("TD1").PivotCache.Refresh
End If
End Sub

Publicado por Adolfo Aparicio a las 00:32 2 comentarios


Etiquetas: Macros, Tabla Dinámica

DOMINGO, 24 DE OCTUBRE DE 2010


Tablas Dinámicas Inversas

Descargar el fichero: consolidacionmultiple.xlsx

Éste es el resultado:consolidacionmultiple2.xlsx

D isponemos de una sencilla cuenta de resultados por mes. En cada hoja se

encuentran los datos de un mes concreto. Nos proponemos agruparlos con Tablas
Dinámicas utilizando Rangos de Consolidación Múltiple, y finalmente convertir los
datos en una Base de Datos.

Por ejemplo, los resultados de Enero son los siguientes.

Fase 1
Utilizando Rangos de Consolidación múltiple en Excel 2007 vamos a obtener una
tabla resumen con los resultados de todos los meses. Para ello, vamos a necesitar
utilizar Tablas Dinámicas con Rangos de Consolidación Múltiple. El problema es que
en Excel 2007 ha desaparecido esta opción en el menú habitual para la confección
de Tablas Dinámicas.

Es necesario agregarlo a la barra de acceso rápido siguiendo estos pasos:

1. Botón de Office
2. Opciones de Excel

3. Personalizar

4. "Comandos disponibles en: " Todos los comandos

5. Localizar, por orden alfabético, "Asistente para tablas y gráficos dinámicos...


(PivotTableReport)"

6. Pulsar el botón Agregar

De esta forma tendremos en la barra de acceso rápido el Asistente para tablas y


gráficos dinámicos.
La barra de acceso rápido puede quedar así:

Lanzamos el asistente y elegimos Rangos de consolidación múltiples.

Elegimos "Crear un solo campo de página"


Agregamos Enero, incluida la fila 5.

Agregamos todos los meses.

Pedimos que el informe de tabla dinámica se realice en una hoja de cálculo nueva.
Obtenemos una Tabla Dinámica que agrupa todas las lineas de la cuenta de resultado
de los 12 meses.

Fase 2
La lista de campos de la Tabla Dinámica es la siguiente.
De esta lista de campos vamos a eliminar la Columna, la Fila y la
página. Únicamente quedará el valor.

Con esto hemos conseguido que la tabla dinámica se reduzca a un único valor
numérico que contiene el Total.
Pulsamos doble click con el ratón sobre dicho valor numérico, y así obtendremos la
siguiente tabla.

Eliminamos la columna D por no aportar información, y habremos obtenido la


información original pero en forma de Base de Datos.
Fase 3
Partiendo de la tabla anterior que contiene los datos en forma de Base de Datos,
vamos a obtener la tabla precedente, cosa que conseguiremos realizando una nueva
Tabla Dinámica.

Insertar, Tabla Dinámica y siguiendo lo pasos habituales llegamos a la siguiente


tabla.
Actualización

Cuando se elige "Rangos de consolidación múltiples" luego es preferible seleccionar


"Campos de página personalizados", en lugar de seleccionar "Crear un solo campo de
página". De esta forma nos ahorramos tener que eliminar la columna que sale a la
derecha.

Otro sistema para conseguir en Excel 2007 el asistente de Tablas Dinámicas del que
disponíamos en Excel 2003 es teclear Alt+T+B. Con ello lanzamos el menú de la
versión 2003.

Das könnte Ihnen auch gefallen