LibreOffice Calc: Casos prácticos (IV)

Por José Francisco Martínez Jiménez

Servicio de Gestión Contable
Intervención General de la Junta de Andalucía
Consejería de Hacienda y Financiación Europea

(*) He finalizado este artículo “en modo jubilado” después de casi 41 años de servicios prestados como funcionario del Estado y de la Junta de Andalucía.

Es un verdadero placer y un honor haber participado y seguir participando en esta revista EnRed@2.0 (esto no es una despedida). Quisiera dar las gracias a todas las personas que forman, han formado y formarán parte de ella.

Y, también, a todos los compañeros y compañeras que son y han sido de la Intervención General de la Junta de Andalucía (en especial de la División de Contabilidad) así como del Servicio Andaluz de Empleo (ese Grupo Hermes oé).

Caso practico número 9. Función SUMA.PRODUCTO (la gran desconocida)

La Ayuda de LibreOffice Calc dice en referencia a esta función:

Multiplica los elementos correspondientes en las matrices especificadas, y calcula la suma de dichos productos.

Sintaxis: SUMA.PRODUCTO(Matriz 1[; Matriz 2;][…;[Matriz 255]])

Matriz 1[; Matriz 2;][…;[Matriz 255]] representan matrices cuyos elementos correspondientes se van a multiplicar.

Al menos una matriz debe ser parte de la lista de argumentos. Si solo se proporciona una matriz, se suman todos los elementos de la matriz. Si se proporciona más de una matriz, todas deben tener el mismo tamaño.

Imagen 1

 

 

 

 

=SUMA.PRODUCTO(A1:B3;C1:D3) devuelve 397.

Cálculo: A1*C1 + B1*D1 + A2*C2 + B2*D2 + A3*C3 + B3*D3

2*4 + 3*5 + 6*8 + 7*9 + 10*12 + 11*13 = 397

Para no complicar las cosas más de lo debido, la palabra “matriz” debemos entenderla como “rango de celdas”. Resumiendo, esta función lo que hace primero es multiplicar las celdas que tienen la misma posición relativa en sus rangos correspondientes y, por último, sumar los resultados parciales de esas multiplicaciones. Por tanto, la función SUMA.PRODUCTO devuelve un único número.

Pero también podemos usar esta función para que calcule el resultado sólo con aquellas celdas que cumplan unos determinados requisitos. Para ésto debemos recordar que el resultado de una comparación es VERDADERO o FALSO. LibreOffice Calc asume que VERDADERO vale 1 (uno) y FALSO vale 0 (cero) y ya sabemos lo que sucede al multiplicar/sumar por 1 y por 0 (ver Imagen 2).

.

Imagen 2

Ahora bien, supongamos que tenemos que trabajar con una tabla como la de la imagen siguiente:

Imagen 3

Y nos preguntan: ¿Cuántos proyectos son de 2021? ¿Y cuántos de 2020? ¿Y cuántas partidas presupuestarias no tienen proyecto? ¿Cuánto suman los créditos de los proyectos de 2021? ¿Y cuánto de los de 2020? ¿Y cuánto de los que no tienen proyecto? ¿Cuánto suman los créditos del capítulo 7 del programa 92B? ¿Y cuánto sólo los de los SS.CC. (provincia = 00)?

Estas preguntas, igual que muchas otras, se pueden responder utilizando varios caminos distintos (tablas dinámicas, filtros, función SUMAR.SI.CONJUNTO utilizando celdas auxiliares, …), pero las vamos a responder usando la función SUMA.PRODUCTO directamente sobre esa tabla:

  1. ¿Cuántos proyectos son de 2021?

    =SUMA.PRODUCTO(IZQUIERDA(F4:F20;4)=”2021″)

  2. ¿Y cuántos de 2020?

    =SUMA.PRODUCTO(IZQUIERDA(F4:F20;4)=”2020″)

  3. ¿Y cuántas partidas presupuestarias no tienen proyecto?

    =SUMA.PRODUCTO(ESBLANCO(F4:F20))

  4. ¿Cuánto suman los créditos de los proyectos de 2021?

    =SUMA.PRODUCTO(G4:G20;IZQUIERDA(F4:F20;4)=”2021″)

  5. ¿Y cuánto de los de 2020?

    =SUMA.PRODUCTO(G4:G20;IZQUIERDA(F4:F20;4)=”2020″)

  6. ¿Y cuánto de los que no tienen proyecto?

    =SUMA.PRODUCTO(G4:G20;ESBLANCO(F4:F20))

  7. ¿Cuánto suman los créditos del capítulo 7 del programa 92B?

    =SUMA.PRODUCTO(G4:G20;MID(D4:D20;7;1)=”7″;MID(D4:D20;3;3)=”92B”)

  8. ¿Y cuánto sólo los de los SS.CC. (provincia = 00) del mismo capítulo y programa?

    =SUMA.PRODUCTO(G4:G20;MID(D4:D20;7;1)=”7″;MID(D4:D20;3;3)=”92B”;DERECHA(D4:D20;2)=”00″)

Veamos detalladamente cómo calcula la función para los casos (1), (4) y (8).

Caso (1)

¿Cuántos proyectos son de 2021?
=SUMA.PRODUCTO(IZQUIERDA(F4:F20;4)=”2021″)

Hay un solo rango de celdas (usa sola matriz), luego el resultado será la suma de aquellas celdas que cumplan la condición (¡Atención!, suma el número de celdas, NO la suma de los valores que contengan esas celdas) :

= 1 + 1 + 0 + 0 + 0 + 1 + 1 + 0 + 0 + 0 + 1 + 1 + 0 + 0 + 0 + 0 + 0 = 6

Debemos recordar que VERDADERO vale 1 (uno) y FALSO vale 0 (cero).

Caso (4)

¿Cuánto suman los créditos de los proyectos de 2021?
=SUMA.PRODUCTO(G4:G20;IZQUIERDA(F4:F20;4)=”2021″)

Aquí tenemos dos rangos de celdas. El primer rango, al no ser usado en una comparación, toma el valor contenido en la celdas correspondientes:

= 20.380,82 * 1 + 47.640,43 * 1 + 18.881,39 * 0 + 1.463,85 * 0 + 45.461,75 * 0 + 54.226,30 * 1 + 13.537,48 * 1 + 83.222,59 * 0 + 82.788,20 * 0 + 10.706,91 * 0 + 1.668,62 * 1 + 94.207,93 * 1 + 46.581,63 * 0 + 49.498,71 * 0 + 45.294,13 * 0 + 65.472,51 * 0 + 97.299,64 * 0 = 231.661,58 €

Caso (8)

¿Cuánto suman los créditos de los SS.CC. (provincia = 00) del mismo capítulo y programa?

=SUMA.PRODUCTO(G4:G20;MID(D4:D20;7;1)=”7″;MID(D4:D20;3;3)=”92B”;DERECHA(D4:D20;2)=”00″)

Aquí entran en juego cuatro rangos de celdas sin importar que tres de ellos son iguales:

= 20.380,82 * 0 * 1 * 0 + 47.640,43 * 0 * 1 * 0 + 18.881,39 * 1 * 1 * 0 + 1.463,85 * 1 * 1 * 0 + 45.461,75 * 1 * 1 * 0 + 54.226,30 * 1 * 1 * 1 + 13.537,48 * 1 * 1 * 1 + 83.222,59 * 1 * 1 * 0 + 82.788,20 * 1 * 1 * 0 + 10.706,91 * 1 * 1 * 0 + 1.668,62 * 0 * 0 * 0 + 94.207,93 * 0 * 0 * 0 + 46.581,63 * 0 * 0 * 0 + 49.498,71 * 0 * 0 * 0 + 45.294,13 * 0 * 0 * 0 + 65.472,51 * 1 * 0 * 0 + 97.299,64 * 1 * 0 * 0 = 67.763,78 €



Por vuestra parte sólo queda practicar …



Caso práctico nº 10: Copiar una tabla de un archivo PDF a Calc

Hay momentos en que necesitamos trabajar en Calc con una tabla o conjunto de datos que se encuentran en un archivo PDF, por ejemplo, la tabla de la página 19 de la Ley 3/2020, de 28 de diciembre, del Presupuesto de la Comunidad Autónoma de Andalucía para el año 2021 (BOJA número 251 del 31 de diciembre de 2020):

Imagen 4

Como siempre en informática hay varios caminos posibles, ahora presentaremos uno de esos caminos:

  1. Descargamos el archivo PDF (carpeta Descargas o la carpeta que corresponda). Es primordial descargarlo porque si intentamos estos pasos en el visor PDF de nuestro navegador (Google Chrome, Mozilla Firefox o Microsoft Edge) no funcionarán.

  2. Abrimos el archivo del punto anterior con Adobe Acrobat Reader. Nos vamos a la página en cuestión y hacemos zoom hasta que veamos completamente la tabla que queremos copiar (ver Imagen 4: zoom al 100%). Este archivo PDF debe permitir copiar su contenido.

  3. Seleccionamos y copiamos la primera columna de la tabla pinchando <Alt> o <>+<Alt>, dependiendo de la versión de Adobe Acrobat Reader que tengamos instalada, justamente a la izquierda de “0.1” y arrastrando con el ratón hasta después de “8.2”.

Imagen 5
Imagen 6

4. En la celda destino de Calc pegamos como “Texto sin formato” para que se abra la ventana de “Importación de texto” y así tener el control sobre cómo se pegan los datos:

Imagen 7
Imagen 8

5. Repetimos el paso 3 con la segunda columna de la tabla del PDF:

Imagen 9
Imagen 10

6. Volvemos a repetir el paso 3 con la tercera columna de la tabla del PDF. El “TOTAL” no lo copiamos porque usaremos una fórmula para comprobar que se han pegado correctamente las cantidades:

Imagen 11
Imagen 12

7. Vemos en Calc el resultado del copia-pega:

Imagen 14

8. Por último nos queda darle el formato que deseemos y comprobar el “TOTAL”:

Imagen 15

Este artículo se ha escrito utilizando LibreOffice Writer, Calc e Impress versión 7.3.6 para entornos corporativos.

Saludos cordiales.

Si te ha gustado este artículo, encontrarás más contenidos interesantes en nuestra sección “Tecnología práctica”.

Y no dejes de ver qué tenemos publicado en los distintos números de EnRed@2.0.