Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
En esta ocasin haremos un ejemplo bsico de cmo utilizar un formulario VBA para desarrollar una mini-aplicacin en Excel que realice la conversin de temperaturas entre grados Celsius y grados Fahrenheit. Este ejemplo ser de gran ayuda para aquellos que comienzan en la programacin VBA.
De inmediato el panel principal mostrar el formulario recin creado as como un pequeo cuadro de dilogo con el ttulo Cuadro de herramientas el cual contiene los controles que podemos agregar al formulario.
El Cuadro de herramientas tiene un botn para cada tipo de control como etiqueta, cuadro de texto, cuadro combinado, cuadro de lista, casilla de verificacin, botn de opcin, etc. Para agregar un control al formulario es necesario hacer clic en el botn correspondiente dentro del Cuadro de herramientas y posteriormente hacer clic dentro del formulario. Otra manera de agregar un control al formulario es pulsar el botn del control y arrastrarlo sobre el formulario.
Para cambiar el texto de la etiqueta y del botn de comando debemos modificar la propiedad llamadaCaption y eso lo haremos desde la ventana Propiedades. Si esta ventana no se muestra
actualmente en el Editor de Visual Basic puedes seleccionarla desde el men Ver o tambin puedes hacer clic derecho sobre alguno de los controles y seleccionar la opcin Propiedades lo cual mostrar la ventana:
Encuentra la propiedad Caption y al lado derecho ingresa el valor de dicha propiedad para el control seleccionado. En la imagen anterior estamos viendo las propiedades de la etiqueta llamada Label1 y por lo tanto he colocado el texto Temperatura. Para hacer el cambio de esta propiedad para el botn de comando solo debes seleccionarlo de la lista desplegable que se encuentra en la parte superior de la misma ventanaPropiedades. Al terminar el cambio de la propiedad Caption tendremos el formulario de la siguiente manera:
En la imagen anterior puedes notar que tambin he cambiado en el ttulo del formulario y lo puedes hacer modificando tambin la propiedad Caption del formulario mismo.
nos permita hacerlo sino que debemos utilizar cdigo VBA. Para especificar estas opciones debemos hacer doble clic sobre el formulario y seleccionar el cdigo para el procedimiento Initialize donde colocaremos las instrucciones necesarias para agregar las opciones:
La instruccin AddItem es la que nos permite agregar un nuevo elemento al cuadro de lista y la instruccinListIndex nos permite indicar el valor que estar seleccionado al cargarse el formulario y que ser la opcin Celsius ya que es la primera opcin de la lista y por lo tanto tiene asociado el ndice cero.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
Private Sub CommandButton1_Click() 'Validar que se ha especificado una temperatura If TextBox1.Value = "" Then MsgBox "Debes especificar una temperatura" Exit Sub End If 'Si es Celsius convertir a Fahrenheit If ComboBox1.ListIndex = 0 Then temperatura = TextBox1.Value * 1.8 + 32 MsgBox temperatura & " Fahrenheit" 'Si es Fahrenheit convertir a Celsius Else temperatura = (TextBox1.Value - 32) * 5 / 9 MsgBox temperatura & " Celsius" End If End Sub
La primera validacin dentro del cdigo verifica que el cuadro de texto no est vaco en cuyo caso desplegar un mensaje solicitando ingresar una temperatura y posteriormente sale de la subrutina. La segunda validacin es para saber si el cuadro de lista tiene seleccionada la opcin Celsius y por lo tanto
hacer la conversin a Fahrenheit para mostrar el resultado. Por el contrario, si el cuadro de lista tiene seleccionada la opcin Fahrenheit se har la conversin a Celsius. Para probar el funcionamiento de nuestro formulario es suficiente con pulsar el botn Ejecutar que se encuentra en la barra de herramientas Estndar:
Ya que hemos terminado con la construccin del formulario y el cdigo necesario para su funcionamiento, podemos dar un paso adicional para llamar el formulario desde una hoja de Excel.
Al hacer doble clic sobre el botn se mostrar el cdigo asociado al evento Click del botn y debemos colocar una sola instruccin:
Con esto ser suficiente para que al momento de pulsar el botn de la hoja de Excel se muestre el formulario VBA recin creado y podamos realizar la conversin de temperaturas. Aunque este es un ejemplo muy sencillo espero que sea til para darte cuenta del gran potencial que existe en el uso de formularios en Excel.