# Hoja de cálculo

Una hoja de cálculo es un tipo de documento que permite manipular datos numéricos y alfanuméricos dispuestos en forma de tablas compuestas por celdas, las cuales se suelen organizar en una matriz de filas y columnas.
La celda es la unidad básica de información en la hoja de cálculo, donde se insertan los valores y las fórmulas que realizan los cálculos. Habitualmente es posible realizar cálculos complejos con fórmulas y funciones y dibujar diferentes tipos de gráficas.

## Orígenes

En la década de 1960 se creó el concepto de una hoja de cálculo electrónica en el artículo Budgeting Models and System Simulation de Richard Mattessich. Pardo y Landau merecen parte del crédito de este tipo de programas, y de hecho intentaron patentar (patente en EE. UU. número 4.398.249) algunos de los algoritmos en 1970. La patente no fue concedida por la oficina de patentes por ser una invención puramente matemática. Pardo y Landau ganaron un caso en la corte estableciendo que "algo no deja de ser patentable solamente porque el punto de la novedad es un algoritmo". Este caso ayudó al comienzo de las patentes de software.
Dan Bricklin es el inventor aceptado de las hojas de cálculo. Bricklin contó la historia de un profesor de la universidad que hizo una tabla de cálculos en una pizarra. Cuando el profesor encontró un error, tuvo que borrar y reescribir una gran cantidad de pasos de forma muy tediosa, impulsando a Bricklin a pensar que podría replicar el proceso en un computador, usando el paradigma tablero/hoja de cálculo para ver los resultados de las fórmulas que intervenían en el proceso.
Su idea se convirtió en VisiCalc, la primera hoja de cálculo, y la "aplicación fundamental" que hizo que la PC (computadora personal) dejase de ser solo un hobby de entusiastas de las computadoras, para convertirse también en una herramienta en los negocios y en las empresas.

## Celdas

La celda de una hoja de cálculo visualmente es el lugar donde se pueden introducir datos o realizar cálculos. Generalmente son de forma rectangular y se forman en la intersección de una fila y una columna, se les identifica con un nombre, como por ejemplo C4; C es el nombre de la columna y 4 el número de la fila.
Las filas son horizontales y están identificadas por los números en secuencia ascendente. Las columnas en cambio están identificadas con las letras del alfabeto y van de forma vertical en la Hoja de Cálculo.
En las celdas se introduce cualquier tipo de información como texto o números, y también fórmulas o instrucciones para realizar un determinado cálculo o tarea.

## Operaciones aritméticas básicas en hojas de cálculo

En una misma celda es posible realizar operaciones como suma, resta y multiplicación como si fuera una calculadora electrónica, es decir, se introducen los valores numéricos acompañados de los operadores aritméticos necesarios y se presiona la tecla Intro, visualizando el resultado al instante. Las hojas de cálculo introducen el concepto de ubicar cada número en una celda para luego utilizarlas y plasmar su resultado en otra celda también. Una celda puede tomar el valor de otra celda con solo introducir =(casilla1) .
Cuando queremos sumar se usa =(casilla1)+(casilla2), esta sencilla fórmula suma los números seleccionados. Cuando queremos restar se hace el procedimiento anterior pero en vez del signo de más ponemos un signo de menos "-", esta fórmula resta los números seleccionados.
Para multiplicar hacemos el mismo procedimiento pero cambiamos el signo por "*" y esta fórmula nos permite multiplicar todos los números seleccionados, lo mismo para las divisiones solo cambiamos el signo por "/" y esta fórmula nos permite dividir los números seleccionados.
Cada vez que se insertan datos en una celda, es posible observar que, por ejemplo, los datos literales o de texto se alinean a la izquierda de la celda mientras que un dato tipo numérico (entero o con decimales) se alinea a la derecha de la celda de forma automática.
Sin embargo, puede decirse que cada vez que se necesita hacer uno o más cálculos en una celda, es necesario escribir el cálculo de un modo diferente.
Existen operadores aritméticos básicos como la suma, la diferencia, el producto y el cociente que permiten realizar dichos cálculos, existen además funciones predeterminadas para dicho fin. En todos los casos, debe anteponerse el signo igual (=) a todos estos tipos de cálculos para que la plantilla “reconozca” a ese dato como una operación aritmética o función sobre determinado dato o grupo de datos.

### Las cuatro operaciones básicas son: suma, resta, multiplicación y división

Las operaciones básicas en una hoja de cálculo son las aritméticas conocidas: suma, resta, multiplicación y división.
Es importante mencionar que para la ejecución de la tarea es necesario iniciar la escritura con un signo de igual (=) o bien un signo de más (+) según sea la versión de la hoja de cálculo.
La multiplicación se realiza por medio del operador * (que se visualiza como un asterisco). Por ejemplo =b1*c3, multiplica los valores que hay en las celdas b1 y c3. Se pueden multiplicar más de dos celdas.
La división se realiza por medio del operador /. Por ejemplo =b1/c3, divide el valor que hay en la celda b1 por el de la celda c3.
Si se desea elevar el valor de una celda al exponente n, debe utilizarse el símbolo circunflejo (^). Por ejemplo, para elevar el contenido de la celda c4 al cubo se escribe la fórmula =c4^3.
Si la suma es de pocas celdas, conviene sumarlas directamente: =a1+a2+a3. Lo mismo puede hacerse si necesita restarse: =a1-b1-c1.
Cuando queremos sumar se usa =(casilla1)+(casilla2) esta fórmula suma los números seleccionados
Cuando queremos restar se hace el procedimiento anterior pero en vez del signo de más ponemos un signo de menos "-", esta fórmula resta los números seleccionados
Para multiplicar hacemos el mismo procedimiento pero cambiamos el signo por "*" y esta fórmula nos permite multiplicar todos los números seleccionados, lo mismo para las divisiones solo cambiamos el signo por "/" y esta fórmula nos permite dividir los números seleccionados

### Símbolos de agrupación de operaciones

Cuando se deben hacer operaciones combinadas (divisiones que se suman a una multiplicación, por ejemplo), se pueden usar paréntesis como en matemática para separar una operación de otra. Sin embargo, y también del mismo modo que en matemática, las operaciones tienen un orden de prioridad “natural” de operación: primero se resuelven potencias y raíces, después los cocientes y productos, y finalmente adiciones y sustracciones.

#### Orden de prioridad de las operaciones

Todas las subexpresiones entre paréntesis se evalúan primero. Las subexpresiones con paréntesis anidados se evalúan desde el centro hacia los extremos.
Dentro de una expresión, los operadores se evalúan de la siguiente manera:
* Se analiza la expresión de izquierda a derecha respetando el orden de prioridad “natural” de operación.
* Si en la expresión existen paréntesis, lo que se encuentra dentro de estos se evalúan de izquierda a derecha según orden de prioridad de los mismos.
* Si en la expresión se encuentran más de un par de paréntesis, la evaluación se realiza comenzando con el paréntesis que se encuentra más a la izquierda en la expresión hasta llegar al par de paréntesis que se encuentra más a la derecha de la expresión.

### Nociones de constantes y variables

Un par de conceptos de vital interés en matemática, y en toda aplicación de esta ciencia a un área específica de conocimiento, es el de constante y variable. Para emplear una terminología simple, entenderemos por constante todo número (o más genéricamente todo valor) permanente.
Una variable en cambio, y como su nombre lo sugiere, es una representación de un dato que puede no tener el mismo valor siempre.
Así, cuando se dice que la temperatura de ebullición del agua es de 100 °C, estamos haciendo referencia a un valor constante para ese fenómeno en particular. Sin embargo, si hacemos referencia a la experiencia de calentar el agua, observaremos que a medida que transcurre el tiempo, los valores que toma la temperatura van variando hasta alcanzar la ebullición. En este segundo caso, a la temperatura se la considera variable.

#### Operaciones con constantes

La hoja de cálculo puede manipular de forma directa valores específicos (constantes), de modo similar a una calculadora.
Así, si se desean sumar los números 12, 13, 12 y 14 que están en las celdas a1, a2, a3 y a4 respectivamente, será suficiente con posicionarse, por ejemplo, en la celda a5 y escribir =12+13+12+14.
Como se verá a continuación, esta forma de realizar cálculos (complejos o no), no es recomendable. Cometer un error en la carga de un valor implicaría corregir el número erróneo, y además la fórmula en sí misma.

#### Operaciones con variables

Puede añadirse a todo lo anteriormente expuesto que en Ciencias de la Computación, la interpretación de constante y de variable es similar a la de matemática, pero tiene además un enfoque particular en lo referente a la idea de variable.
Se considera que toda variable, en informática, almacena un valor. De este modo será mucho más ventajoso manipular una variable, y no su contenido específico. En la hoja de cálculo manipular variables equivale a manipular celdas.
De este modo, en el ejemplo anterior, será más eficiente escribir en la celda a5 la fórmula “con variables” =a1+a2+a3+a4, que la fórmula “con constantes” =12+13+12+14. En la primera, si se comete un error al cargar los valores de a1 a a4, solamente se corregirá/n dicho/s error/es. Como la fórmula está escrita “en celdas” – o sea manipulando variables – la fórmula en sí misma recalculará el resultado correcto sin necesidad de ser corregida.

## Fórmulas

Una fórmula es una secuencia formada por valores constantes, referencias a otras celdas, nombres, funciones, u operadores. Una fórmula es una técnica básica para el análisis de datos. Se pueden realizar diversas operaciones con los datos de las hojas de cálculo como *, +, -, Seno, Coseno, etc. En una fórmula se pueden mezclar constantes, nombres, referencias a otras celdas, operadores y funciones. La fórmula se escribe en la barra de fórmulas y debe empezar siempre por el signo =.
Los distintos tipos de operadores que se pueden utilizar en una fórmula son : Operadores aritméticos se emplean para producir resultados numéricos. Ejemplo: + - * / % ^ Operador tipo texto se emplea para concatenar celdas que contengan texto. Ejemplo: & Operadores relacionales se emplean para comparar valores y proporcionar un valor lógico (verdadero o falso) como resultado de la comparación. Ejemplo: < > = <= >= <> Operadores de referencia indican que el valor producido en la celda referenciada debe ser utilizado en la fórmula. En la mayoría de las hojas de cálculo pueden ser: - Operador de rango indicado por dos puntos (:), se emplea para indicar un rango de celdas. Ejemplo: A1:G5 - Operador de unión indicado por una coma (,), une los valores de dos o más celdas. Ejemplo: A1,G5
Cuando hay varias operaciones en una misma expresión, cada parte de la misma se evalúa y se resuelve en un orden determinado. Ese orden se conoce como prioridad de los operadores. Se pueden utilizar paréntesis para modificar el orden de prioridad y forzar la resolución de algunas partes de una expresión antes que otras.
Las operaciones entre paréntesis siguen una jerarquía básica: son siempre ejecutadas antes que las que están fuera del paréntesis. Sin embargo, dentro de los paréntesis se mantiene la prioridad normal de los operadores. Cuando hay expresiones que contienen operadores de más de una categoría, se resuelve antes las que tienen operadores aritméticos, a continuación las que tienen operadores de comparación y por último las de operadores lógicos .
Los operadores de comparación tienen todos la misma prioridad, es decir que son resueltos de izquierda a derecha, en el orden en que aparecen. Son: Comparación Igualdad (=) Desigualdad (<>) Menor que (<) Mayor que (>) Menor o igual que (<=) Mayor o igual que (>=)
Los operadores lógicos y aritméticos son resueltos en el siguiente orden de prioridad (de mayor a menor): Aritméticos Lógicos Exponenciación (^) Not Negación (-) And Multiplicación (*) y División (/) Or Adición (+) y Sustracción (-) Concatenación de caracteres (&) Cuando hay multiplicación y división en la misma expresión, cada operación es resuelta a medida que aparece, de izquierda a derecha. Del mismo modo, cuando se presentan adiciones y sustracciones en una misma expresión, cada operación es resuelta en el orden en que aparece, de izquierda a derecha. El operador de concatenación de cadenas de caracteres (&) no es realmente un operador aritmético pero es prioritario respecto a todos los operadores de comparación.
Funciones Una función es una fórmula predefinida que realiza los cálculos utilizando valores específicos en un orden particular. Todas las funciones tienen que seguir una sintaxis y si esta no se respeta el programa nos mostrará un mensaje de error. 1) Los argumentos o valores de entrada van siempre entre paréntesis. No dejes espacios antes o después de cada paréntesis. 2) Los argumentos pueden ser valores constantes (número o texto), fórmulas o funciones. 3) Los argumentos deben de separarse por un punto y coma ";". Ejemplo: =SUMA(A1:B3) esta función equivale a =A1+A2+A3+B1+B2+B3

### Referencias relativas

Cuando escribimos una fórmula, cualquiera que sea, podemos evitar escribirla muchas veces por medio del punto de autorellenado, que está en la celda seleccionada abajo a la derecha. Si nos ubicamos en la celda que contiene la fórmula, y acercamos el ratón a ese punto hasta que el puntero se transforma en una cruz finita y negra, puede apretarse el botón sin soltarse y "arrastrar" la fórmula al resto de las celdas

### Referencias absolutas

Muchas veces ocurre que un valor en una celda debe afectar a varios valores que se encuentran en otro grupo de celdas. Por ejemplo, en una celda puede haber un precio que debe multiplicar a varias cantidades que se encuentran en otras celdas; o un porcentaje (de descuento o de incremento) debe multiplicar a varios importes que están en otro rango de celdas. Para poder utilizar la celda de precios, por ejemplo, para realizar las multiplicaciones, no podríamos autollenar la fórmula de multiplicación para todas las celdas. ¿Por qué?, porque como el número de la fila aumenta (es relativa), ya la celda del precio no multiplicaría a todos los números. Entonces, cuando se tiene que multiplicar un número en una celda por varios números que están en otras celdas, lo que conviene es inmovilizar la celda que contiene el precio. Esto se llama hacer una celda o referencia absoluta. Hay dos maneras de hacer esto. La primera es colocar el cursor (con el mouse o las teclas de dirección) delante de la celda que se quiere inmovilizar y pulsar la tecla F4. Supongamos que nuestro precio se encuentra en la celda b1 y la deseamos multiplicar por una primera cantidad de artículos que está en la celda c5. Cuando escribamos esa primera fórmula quedará =b1*c5. Para inmovilizar la celda b1 que tiene el precio por artículo, colocamos el cursor delante de la celda b1 (es decir entre el signo "=" y la "b" de b1) y después de pulsar la tecla F4, la fórmula quedará: =$b$1*c5, con lo cual ya la celda b1 está inmovilizada y al autollenar, no se modificará ni la letra "b" de la columna, ni el número 1 de la fila. Hecho esto, todos los números c5, c6, c7,…. Quedarán multiplicados por lo que hay en b1.
La otra manera de hacerlo es directamente tipear el signo $ delante de la b y el mismo signo delante del número 1 al escribir la fórmula. Del mismo modo anterior, la fórmula se podrá autollenar al resto de las celdas.

## Hojas de cálculo en el mercado

* Apache OpenOffice Calc, OpenOffice.org.
* Calc, integrada en LibreOffice.
* Gnumeric, integrada en Gnome Office
* Google Sheets, integrada en Google Apps.
* KSpread, integrada en KOffice, paquete gratuito de Linux.
* Lotus 1-2-3 integrada en Lotus SmartSuite.
* Microsoft Excel, integrada en Microsoft Office.
* Numbers, integrada en iWork de Apple.
* StarOffice Calc, integrada en StarOffice.
* PlanMaker, integrada en FreeOffice de SoftMaker.
* Corel Quattro Pro, integrada en WordPerfect.
* Hoja de cálculo, integrada en los editores de escritorio OnlyOffice. Paquete open source.
* Sourcetable
* WorkSpace