Formularios
Crearemos formularios en follas de cálculo de Excel, revisando os distintos tipos de controis, as súas características e cómo se pode utilizar a información indicada nestes controis para realizar distintas accións en outras celdas da folla, a través de fórmulas e funcións.
Sumario
Elementos de formularios
Excel pode amosar os datos dunha lista a través dun formulario de datos.
Este formulario de datos é un cadro de diálogo onde cada columna da lista é tratada coma un campo mentres que cada unha das filas é coma un rexistro.
Para amosar unha lista de datos coma un formulario, utiliza o botón formulario (que debe ser engadido á barra de ferramentas se o precisas).
Lembra Xa vimos como amosar a lapela Programador (requirida para traballar con Formularios). Se esqeciches cómo facelo podes consultar a documentación oficial.
A través do formulario de datos que aparecerá ó pulsar o botón formulario podemos desplzarnos entre os distintos elementos da lista, engadir ou cambiar datos e tamén eliminar unha fila da lista; e ata indicar algún criterio de busca para atopar un rexistro en concreto. Ademáis deste formulario integrado, tamén podes crear os teus propios formularios nunha folla de cálculo de xeito que podas utilizalos para realizar algunhas accións.
Estes formularios poderán incluir varios elementos:
- listas despregables
- casillas de verificación
- barras de desprazamento
- ...
Poderemos deseñalos como desexemos para adaptalos de xeito que os usuarios da folla de cálculo os poidan utilizar para cumprimentar os datos ou obter certos resultados.
Por exemplo, poderíamos crear un formulario en Excel que tivera o aspecto e actuara coma un cadro de diálogo. Os usuarios da folla poderían introducir ou seleccionar certos datos desde este formulario e obterían outros valores en función da información introducida.
Para ver o xeito de crear formularios e facer que actúen dun xeito determinado utilizaremos esta folla de cálculo. O usuario da folla introducirá varias opcións (destino, persoas, tempada, etc.) e con iso calculara o prezo dos billetes de avión.
Na folla de Precios temos a información que precisamos para calcular os prezos dos billetes de avión:
Na lista da esquerda podes ver os precios base dun billete segundo o destino elixido; mentras que, na parte dereita da folla, amósanse os incrementos ou descontos que teremos que facer.
Na folla de Billetes crearemos o formulario que itilizarán os usuarios.
Premeremos no botón Insertar, e amosaranse os controis que podemos engadir a un formulario:
Control Nun formulario, obxecto da interfaz gráfica que pode utilizar o usuario para introducir datos ou opcións, seleccionar unha opción ou ler un dato (por exemplo, cadros despregables, botóns de opción, etc.).
Para engadir un control faremos clic no botón correspondente do menú deste botón e pulsaremos na posición da folla de cálculo onda desexamos inserilo; tamén e posible pulsar e arrastrar na folla de cálculo de xeito que se creará o control co tamaño que indiquemos ó arrastrar.
Cadro combinado
Engadimos un control na folla que nos servirá para seleccionar o destino do vo utilizando un cadro combinado. Este control ten unha lista despregable desde a que poderemos seleccionar o elemento que aparecerá no cadro de texto. Unha vez temos o control na folla de cálculo temos que estableces as súas Propiedades.
Os campos que aparecen nesta lapela Control do cadro de propiedades están en función do tipo de control de que se trate; con eles poderás indicar certas características sobre o seu funcionamento ou a súa relacion con celdas da folla.
Para o tipo de control amosado:
- Rango de entrada indicará o rango de celdas que terán os valores que se amosarán na lista despregable. Neste caso temos que amosar os destinos disponibles do vo que estan na folla Precios (Precios!$A$5:$A$14).
- Vincultar con la celda devolve na celda indicada un valor segundo o que teñamos seleccionado ou indicado no control. Por exemplo nesta caso a celda indicada en Vincular con la celda amosará un número que será o índice do elemento selecciona na lista despregable de control. Así se seleccionamos o primeiro elemento, na celda amosarase un 1; no segundo un 2, e así sucesivamente. Logo poderemos utilizar este número nunha fórmula doutra celda para realizarmos os cálculos desexados. Escribiremos F3 como a celda a vincular co control.
- Lineas de unión verticales indica o número de liñas que se amosarán na lista despregable á vez. Se hai máis elementos que amosar, aparecerá unha barra de desprazamento vertical.
- Sombreado 3D serve para amosar o control que se trate cun efecto de sombreado tridimensional.
Comprobamos o funcionamento. Escollemos Roma, e en F3 aparecerá un 4 (porque Barcelona é a cuarta posición, o índice dese elemento na lista):
Máis adiante veremos cómo podemos utilizar este número para accedendo á lista da folla Precios obter o prezo que custa un billete de avión a ese destino.
Cadro de lista
AMPLIACIÓN Utiliza o control Cuadro de lista que é moi parecido ó control Cuadro combinado. Amosará unha lista de elementos pero sin ningún cadro de texto. Nas propiedas podes indicar o modo de selección dos elementos da lista: só un (opción Simple ou varios (opcións Múltiple ou Extendida). Esta última fai que cando se pulse un elemento se deseleccionen os demáis. En todo caso, para seleccionar máis dun elemento manteremos premida a tecla Ctrl ou Maiúsculas
PREGUNTA. En qué campo das propiedades dos controis se indicará en qué celda se devolverá o seleccionado no control? (a) Rango de entrada (b) Vincular con la celda (c) Sombreado 3D RESPOSTA. (b)
Seguiremos vendo outro tipo de controis. En particular engadiremos algúns que servirán para sinalar ou marcar cetras opcións que farán unhas accións ou outras na folla de cálculo dependendo da opción escollida.
Botóns de opción
Os botóns de opción adoitan estar agrupados de xeito que só podemos seleccionar un botón dos existentes nun grupo. Cando seleccionamos un botón de grupo se deseleccionan o resto de botóns de opción dese mesmo grupo. Primeiro engadiremos un cadro de grupo que servirá para agrupar os botóns de opción. Despois crearemos os controis do tipo botón de opción colocándoos no interior desde cadro de grupo.
Configuramos ó control:
Repetiremos con outro grupo de botóns Temporada:
IMPORTANTE Para que dous ou máis botóns de opción pertenzan ó mesmo grupo teñen que ter a mesma celda no seu campo Vincultar con la celda.
PISTA ó mover un control ou arrastralo o control se alineará coas liñas de divisón das celdas da folla de cálculo se mantemos pulsada a tecla Alt Para mover un control só horizontal ou vertialmente mantemos pulsada a tecla Maiúsculas. Para cambiar o tamaño mantendo as proporcións mantemos pulsada a tecla Maiúsculas.
Casilla de verificación
AMPLIACIÓN Utiliza a casilla de verificación. A diferencia cos anteriors controles estes permiten ter activada máis dunha opción á vez.
Finalizaremos coa casilla de verificación Pago al contado:
Control de númnero ou de xiro
Engadiremos un control para indicar o número de persoas que van efectuar a viaxe seleccionada. Este control serve para aumentar ou disminuír un valor segundo pulsemos frecha arriba/abaixo.
Nas propiedades permítese escoller:
- un valor minimo e máximo
- un incremento
- o valor actual
Outros controis
- Etiquetas ou rótulos (que simplemente amosan un texto)
- Barras de desrazamento (que serven para elixir un valor de forma parecida ó control de número
- Botones (terás que asociarlle unha macro para que se execute cando se prema nel)
- ...
A saber... Campo de texto, Cuadro combinado de lista y Cuadro combinado desplegable están por compatibilidad con follas de diálogo da versión 5.0 de Excel.
Macros
Tamén podes asociar unha macro co resto de tipos de controis de xeito que esta se execute ó facer clic neles ou ó cambiar o valor do control. Para esto usamos a opción Asignar macro do menú contextual do control.
Funcionalidade
Xa temos o formulario creado con todos os controis necesarios e queda nada máis engadirlle a funcionalidade: cando se seleccione ou indiquen valores no formulario se poida obter inforación, neste caso o prezo dos billetes de avión.
Utilizaremos as celdas vinculadas cos controis para a partir dos seus valores facer unha cousa ou outra.
Comezamos obtendo o precio base por persona a partir do destino seleccionado. Para obter información a partir do elemento seleccionado nun cuadro combinado' adoita empregarse a función INDICE (da categoría Búsqueda y referencia. Esta función serve para devolver un valor dun rango de celdas en función do número de fila e de columna que indiquemos. Coma o seleccionar o destino amósase na calda F3 o índice do elemento seleccionado na lista, utilizaremos o valor desta celda nesta función.
INDICE(Matriz;Número_de_fila;Número_de_columna) Primeiro argumento. A matriz ou rango de celdas de onde imos obter a informaicón Segundo argumento. O número de fila Terceiro argumento. O número de columna Se o primeiro argumento só ten unha fila ou columna non é preciso indicar a columna ou fila da que obteremos o dato; o outro argumento é opcional.
No noso caso imos obter o prezo da viaxe da lista de prezos que hai na folla Precios. O número de fila será o valor que teña a celda F3 na folla Billetes que é celda vinculada ó cadro combinado.
Aparecerá na celda o valor 95,00 que é o prezo do billete de avión a Roma (o elemento seleccionado).
Na celda G13 introduciremos unha fórmula para calcular os incrementos do prezo do billete en función da clase (1ª clase ou 2ª clase) e da tempada (baja, media, alta) seleccionadas. Para este tipo de decisións utlizamos a función SI, que realiza unha acción ou outra en función de se se cumpre unha condición dada ou non.
SI(condición;valor_si_se_compre;valor_si_non_se_cumpre) Primeiro argumento. Analízase a condición indicada. Segundo argumento. A función devolve isto se se cumpre. Terceiro argumento. A función devolve isto se NON se cumpre.
No noso exemplo se temos seleccionada 1ª clase na celda vinculada (F6) amoarase un 1 (por ser o primeiro botón da opción do grupo); seleccionando 2ª clase amosarase un 2 (segundo botón da opción do grupo). Así no primeiro argumento introduciremos F6=1; no segundo argumento incrementaremos o valor para 1ª clase (15%); e no tecerio o precio seguirá igual. A fórmula será SI(F6=1;15;0)
Seleccionamos 1ª clase no formulario da folla e na celda aparecerá 15,00; seleccionamos 2ª clase e aparecerá 0). Con isto, comprobamos o correcto funcionamento de Clase.
Aora teremos en conta a Temporada. A celda F8 terá valor segundo a temporada (baixa = 1, media = 2, alta = 3). Na baixa non teriamos que sumar ningún incremento ó prezo; na media (celda F8=2), incrementaremos en 8,64€. Se non e igual a 1 ou 2, e temporada alta, cun incremento do 13,17€.
A función resultante sería SI(F8=1;0; SI(F8=2;8,64;13,17))
Na celda G13, sumaremos os dous incrementos: o provoado pola clase e o debido á tempada . Con iso obteremos o incremento total. A fórmula: =SI(F6=1;15;0) + SI(F8=2;8,64;13,17))
Para G14, no caso dunha casilla de verificación, a celda vinculada amosa VERDADEIRO cando se activa a casilla e FALSO no caso contrario. Con isto poderemos calcular o posible desconto. A fórmula sería =SI(VERDEDERO;6,25;0)
Para G15, sumanse os valores das celdas G12 e G14 e réstaselle o valor que hai na celda G14.
Para G16, obtemos o prezo total dos billetes, multiplicando o prezo total por persona polo número de persoas, que está na celda C5 (vinculada o control de número)- A fórmula é =G15*C5.
Este sería o resultado:
Unha vez deseñado o formulario, comprobado que as fórmulas funcionan correctamente, podemos realizar melloras en canto a presentación (tamaño, cores, posición, etc.). Podes por exemplo ocultar as liñas de división da folla de cálculo, en Disposición de la página, no grupo de opcións Opciones de la hoja, desmarcar Ver da sección Líneas división.
Outros controis
Ademáis dos controles de formulario, no menú do botón Insertar existen os controles ActiveX.
Este tipo de controis son parecidos aos controis de linguaxes de programación coma Microsoft Visual Basic) e precisan que a funcionalidade seña engadidas mediante macros ou secuencias de comandos escritas na linguaxe Visual Basic para Aplicaciones' (VBA).
Poden responder a eventos do usuario (poden facer accións cando o usuario coloque o curso do rato sobre eles, cando os pulse, etc.). Cando un usuario utiliza un control ActiveX, executarase o código que teñas indicado para procesar todos os eventos que sucedan.
Cando facemos clic co botón dereito sobre un control ActiveX aparece o comando Propiedades e non se amosa a opción Asignar macro. Desde xeito podes distinguir un control ActiveX dun control de formulario.
Traballar con formularios
Resumo
En Excel podes crear os teus propios formularios a partir dos controles existentes no botón Insertar da lapela Programador. Podemos incluir controis de xeito que os usuarios os poidan utilizar para introducir certos datos ou obter información en función do que indiquen estes controis.
Algúns controis que podes utilizar:
Despois de inserir un control podes establecer as súas propiedades. O aspecto máis importante é indicar nunha celda no campo Vincular con la celda: así o control devolverá nesa celda un valor segundo o que teñamos seleccionado ou indicado no control, que poderemos utilizar en fórmulas ou funcións doutras celdas.
