SlideShare una empresa de Scribd logo
1 de 21
Interfaz gráfica de usuario
 Variables globales
 Generalidades formularios
 Manipulación de datos
 Botones de opción
 Uso de imágenes
 Ejercicios de estudio
Variables globales
Consideraremos variable global, a una variable que esta
disponible (compartida) en los diferentes ámbitos del
programa (espacio adentro de cada subrutina o función).
Para declarar una variable global, basta con declararla al
principio del código.
Se recomienda el uso de las palabras reservadas “Option
Explicit” para obligar a VBA a validar la declaración correcta de
todas las variables que use la aplicación
Variables globales
Option Explicit
Dim contador As Integer
Private Sub cmdBoton1_Click()
contador = contador + 1
End Sub
Private Sub cmdBoton2_Click()
contador = contador - 1
End Sub
La variable contador es global en el programa, por tanto su valor puede ser modificado
en dos subrutinas diferentes.
Generalidades formularios
 Un formulario es la ventana contenedora de las
aplicaciones que usan interfaz gráfica.
 Se recomienda cambiar la propiedad Caption para que
la ventana de la aplicación tenga un nombre que
represente el programa.
 Se recomienda cambiar la propiedad Name para que
el formulario tenga un nombre de variable adecuado.
(ej: frmJuego)
Generalidades formularios
 Se recomienda el uso de la subrutina Initialize, para
asignar valores por defecto que va a tener el
formulario al principio de la ejecución del programa.
De tal forma que cada vez que se ejecute el programa
inicialice con estos valores. Por lo general en esta
subrutina se inicializan las variables globales.
Generalidades formularios
Option Explicit
Dim numeroVidas as Integer
Private Sub UserForm_Initialize()
numeroVidas = 3
End Sub
La variable global vidas, se inicializa en la subrutina
UserForm_Initialize, de tal forma que cada que se ejecuta el
programa el número de vidas siempre será 3.
Manipulación de datos
Es importante recordar como se debe manipular los
datos de una aplicación que use interfaz gráfica.
 Los campos de texto (TextBox) y los mensajes
InputBox, siempre retornan valores de cadena con la
información que el usuario ingresa, por tanto siempre
se debe validar que las cadenas se puedan convertir a
número antes de realizar operaciones aritméticas.
Manipulación de datos
 Ejemplo InputBox
Dim str As String
str = InputBox("Ingrese un dato numérico")
If IsNumeric(str) Then
MsgBox "El dato es correcto, se puede operar"
Else
MsgBox "El dato no se puede operar aritméticamente"
End If
Manipulación de datos
 Ejemplo textbox
If IsNumeric(txtCampo.Text) Then
MsgBox "El dato es correcto, se puede operar“
Else
MsgBox "El dato no se puede operar aritméticamente"
End If
Botones de opción
 El botón de opción o optionButton, es un elemento
gráfico que permite crear una selección mutuamente
excluyente en el programa. Se usa para controlar el
modo de ejecución o de habilitar o deshabilitar opciones
dentro del programa. Es un componente de selección
única.
Botones de opción
 Gráficamente, este control se ve así
Normalmente este elemento se relaciona con dos o más
elementos del mismo tipo, para crear un grupo de
opciones mutuamente excluyentes.
Botones de opción
 Además para poder lograr que la selección del elemento
cambie al seleccionar otro botón de opción, se debe
vincular cada elemento con un grupo. Para hacer esto se
debe asignar el mismo nombre a la propiedad GroupName.
Botones de opción
 Si se vinculan todos los campos de selección correctamente al
grupo, al probar el programa, se debe pasar la selección entre los
diferentes botones de opción, al hacer clic sobre cada uno. Es
posible controlar las acciones en el programa, asociando una
subrutina que atienda el evento clic sobre cada control, así:
Private Sub optOpcion1_Click()
‘código al seleccionar el botón de opción
End Sub
Además es posible conocer el valor seleccionado de cada botón de
opción por medio de la propiedad value.
Imágenes
 Ruta absoluta: Es la ubicación de un recurso, respecto a la
raíz del sistema de archivos del sistema operativo. Ejemplo:
C:UsersUsuarioPictureslogo.jpg
 Ruta relativa: Es la ubicación de un recurso respecto a la
carpeta actual. Ejemplo: “imágenes/logo.jpg”
Nota: Se recomienda usar siempre la ruta relativa, para que el
programa funcione correctamente independiente de la
ubicación de los archivos.
Imágenes
 Para usar imágenes en la aplicación, se recomienda usar
el elemento Image. Para tal fin se debe dibujar el
elemento en el formulario y asignar el valor del ancho y
del alto (width, height).
 Para cambiar el valor de la imagen en tiempo de
ejecución, se debe usar la propiedad Picture, pasando la
ruta relativa donde esta ubicada la imagen.
Imágenes
Cambio de la imagen que se muestra en el contenedor image.
Option Explicit
Dim contador As Integer
Private Sub CommandButton1_Click()
Dim temp as String
temp = "imagenes/img_0" & contador & ".jpg"
contador = contador + 1
If contador <7 then
imgImagen.Picture = LoadPicture(temp)
End if
End Sub
Cada que se presiona el botón, se cambia la imagen del control imgImagen. Se tiene en total 7
imágenes con un nombre secuencial con el prefijo img_0 y con extensión .jpg, así: img_01.jpg.
Imágenes
El siguiente código permite cambiar la imagen usando una subrutina que recibe un
parámetro que es el nombre de la imagen
Sub CambiarRuta(imagen)
Dim ruta As String
ruta = ThisWorkbook.Path & Application.PathSeparator_
& "imagenes" & Application.PathSeparator & imagen
imgEmoji.Picture = LoadPicture(ruta)
End Sub
Para invocar la rutina se usa
Private Sub optOpcion1_Click()
CambiarRuta ("Google-Noto-Emoji-Smileys-10029-face-with-rolling-eyes.ico")
End Sub
Imágenes
Recomendaciones para usar correctamente imágenes en un programa:
 Crear una secuencia de imágenes que tengan las mismas dimensiones de
alto y ancho, si las imágenes se van a sobreponer.
 Mantener la proporción del ancho respecto al alto, para evitar que la imagen
se deforme.
 Nombrar cada imagen con un nombre secuencia, sin caracteres especiales o
espacios.
 Ubicar las imágenes en una carpeta, en la misma carpeta del programa.
Ejercicios
 Realizar un programa que por medio de interfaz grafica
permita pedir un número n, y muestre en un MsgBox el
resultado de la suma de 0 hasta n, el promedio y la
respuesta invertida en un campo de texto.
 Usar un grupo de dos botones de opción, para seleccionar
el modo de conversión. (binario o decimal) y al cambiar de
selección se debe convertir un valor numérico presente en
un campo de texto.
Ejercicios
 Crear un programa que permita calcular la suma de dos
vectores de dimensión 3, representados en 6 campos de
texto.
 Escribir un programa que permita realizar conversiones
entre unidades de distancia.
 Escribir un programa que permita Eliminar los dígitos del 0
al 9 presentes en una cadena.

Más contenido relacionado

La actualidad más candente

Método de ordenamiento por selección (selection sort
Método de ordenamiento por selección (selection sortMétodo de ordenamiento por selección (selection sort
Método de ordenamiento por selección (selection sortlinkinpark03
 
Terminologia de teoria de redes
Terminologia de teoria de redesTerminologia de teoria de redes
Terminologia de teoria de redesADRIANA NIETO
 
Metodos numéricos, códigos en Matlab
Metodos numéricos, códigos en MatlabMetodos numéricos, códigos en Matlab
Metodos numéricos, códigos en MatlabBryan José Sarango
 
Solución de sistemas de ecuaciones lineaes
Solución de sistemas de ecuaciones lineaesSolución de sistemas de ecuaciones lineaes
Solución de sistemas de ecuaciones lineaesAndrea García
 
Cuadro comparativo algoritmos de busqueda
Cuadro comparativo algoritmos de busquedaCuadro comparativo algoritmos de busqueda
Cuadro comparativo algoritmos de busquedaCristopher Morales Ruiz
 
Algoritmo de Retropropagación
Algoritmo de RetropropagaciónAlgoritmo de Retropropagación
Algoritmo de RetropropagaciónESCOM
 
Optimización de sistemas y funciones: conceptos, métodos y ejemplos.
Optimización de sistemas y funciones: conceptos, métodos y ejemplos.Optimización de sistemas y funciones: conceptos, métodos y ejemplos.
Optimización de sistemas y funciones: conceptos, métodos y ejemplos.Nahilin Ochoa
 
Microcontroladores AVR
Microcontroladores AVRMicrocontroladores AVR
Microcontroladores AVRabemen
 
16a clase otras aplicaciones de comparadores
16a clase otras aplicaciones de comparadores16a clase otras aplicaciones de comparadores
16a clase otras aplicaciones de comparadoresManuelGmoJaramillo
 
Matlab integración numérica, método del trapecio
Matlab integración numérica, método del trapecioMatlab integración numérica, método del trapecio
Matlab integración numérica, método del trapecioTensor
 
Método de romberg
Método de rombergMétodo de romberg
Método de rombergTensor
 
Sistemas lineales invariantes en el tiempo
Sistemas lineales invariantes en el tiempoSistemas lineales invariantes en el tiempo
Sistemas lineales invariantes en el tiempoMari Colmenares
 
Sistemas lineales invariantes en el tiempo
Sistemas lineales invariantes en el tiempoSistemas lineales invariantes en el tiempo
Sistemas lineales invariantes en el tiempoJosé Parra
 
Diseño de amplificador emisor seguidor (colector comun) bjt y simulacion
Diseño de amplificador emisor seguidor (colector comun) bjt y simulacionDiseño de amplificador emisor seguidor (colector comun) bjt y simulacion
Diseño de amplificador emisor seguidor (colector comun) bjt y simulacionMiguel Angel Peña
 
Electrónica teoría de circuitos 6 edición boylestad.pdf
Electrónica teoría de circuitos 6 edición boylestad.pdfElectrónica teoría de circuitos 6 edición boylestad.pdf
Electrónica teoría de circuitos 6 edición boylestad.pdfSANTIAGO PABLO ALBERTO
 

La actualidad más candente (20)

trabajo final
trabajo finaltrabajo final
trabajo final
 
Método de ordenamiento por selección (selection sort
Método de ordenamiento por selección (selection sortMétodo de ordenamiento por selección (selection sort
Método de ordenamiento por selección (selection sort
 
Metodo quicksort
Metodo quicksortMetodo quicksort
Metodo quicksort
 
Terminologia de teoria de redes
Terminologia de teoria de redesTerminologia de teoria de redes
Terminologia de teoria de redes
 
Metodos numéricos, códigos en Matlab
Metodos numéricos, códigos en MatlabMetodos numéricos, códigos en Matlab
Metodos numéricos, códigos en Matlab
 
Solución de sistemas de ecuaciones lineaes
Solución de sistemas de ecuaciones lineaesSolución de sistemas de ecuaciones lineaes
Solución de sistemas de ecuaciones lineaes
 
Cuadro comparativo algoritmos de busqueda
Cuadro comparativo algoritmos de busquedaCuadro comparativo algoritmos de busqueda
Cuadro comparativo algoritmos de busqueda
 
Algoritmo de Retropropagación
Algoritmo de RetropropagaciónAlgoritmo de Retropropagación
Algoritmo de Retropropagación
 
Optimización de sistemas y funciones: conceptos, métodos y ejemplos.
Optimización de sistemas y funciones: conceptos, métodos y ejemplos.Optimización de sistemas y funciones: conceptos, métodos y ejemplos.
Optimización de sistemas y funciones: conceptos, métodos y ejemplos.
 
Microcontroladores AVR
Microcontroladores AVRMicrocontroladores AVR
Microcontroladores AVR
 
16a clase otras aplicaciones de comparadores
16a clase otras aplicaciones de comparadores16a clase otras aplicaciones de comparadores
16a clase otras aplicaciones de comparadores
 
Matlab integración numérica, método del trapecio
Matlab integración numérica, método del trapecioMatlab integración numérica, método del trapecio
Matlab integración numérica, método del trapecio
 
Método de romberg
Método de rombergMétodo de romberg
Método de romberg
 
Recta de carga
Recta de cargaRecta de carga
Recta de carga
 
Sistemas lineales invariantes en el tiempo
Sistemas lineales invariantes en el tiempoSistemas lineales invariantes en el tiempo
Sistemas lineales invariantes en el tiempo
 
Sistemas lineales invariantes en el tiempo
Sistemas lineales invariantes en el tiempoSistemas lineales invariantes en el tiempo
Sistemas lineales invariantes en el tiempo
 
Métodos numéricos aplicados a la mecanica
Métodos numéricos aplicados a la mecanicaMétodos numéricos aplicados a la mecanica
Métodos numéricos aplicados a la mecanica
 
Diseño de amplificador emisor seguidor (colector comun) bjt y simulacion
Diseño de amplificador emisor seguidor (colector comun) bjt y simulacionDiseño de amplificador emisor seguidor (colector comun) bjt y simulacion
Diseño de amplificador emisor seguidor (colector comun) bjt y simulacion
 
Electrónica teoría de circuitos 6 edición boylestad.pdf
Electrónica teoría de circuitos 6 edición boylestad.pdfElectrónica teoría de circuitos 6 edición boylestad.pdf
Electrónica teoría de circuitos 6 edición boylestad.pdf
 
01 señal senoidal
01 señal senoidal01 señal senoidal
01 señal senoidal
 

Similar a VBA Interfaz de usuario

Presentación interfaz gráfica_matlab
Presentación interfaz gráfica_matlabPresentación interfaz gráfica_matlab
Presentación interfaz gráfica_matlabXavier Maita
 
DIAPOSITIVA - GUIDE.pptx-----------------------------
DIAPOSITIVA - GUIDE.pptx-----------------------------DIAPOSITIVA - GUIDE.pptx-----------------------------
DIAPOSITIVA - GUIDE.pptx-----------------------------jorgejvc777
 
Entrada y salida, manejo de cadenas de texto
Entrada y salida, manejo de cadenas de textoEntrada y salida, manejo de cadenas de texto
Entrada y salida, manejo de cadenas de textoAndres Bedoya Tobon
 
ProgramacióN Orientada A Objetos
ProgramacióN Orientada A ObjetosProgramacióN Orientada A Objetos
ProgramacióN Orientada A ObjetosRaymond Marquina
 
2012 interfaz grafica en guide matlab
2012 interfaz grafica en guide matlab2012 interfaz grafica en guide matlab
2012 interfaz grafica en guide matlabCarlos Yagamy
 
Elementos Básicos en Delphi 7
Elementos Básicos en Delphi 7Elementos Básicos en Delphi 7
Elementos Básicos en Delphi 7luis_ipb
 
Modulos y funciones en VBA
Modulos y funciones en VBAModulos y funciones en VBA
Modulos y funciones en VBAprofecesde
 
Clases De Objetos Principales De As3
Clases De Objetos Principales De As3Clases De Objetos Principales De As3
Clases De Objetos Principales De As3Andres Garcia
 
GUI EN MATLAB MODULACION PULSO UNICO
GUI EN MATLAB MODULACION PULSO UNICOGUI EN MATLAB MODULACION PULSO UNICO
GUI EN MATLAB MODULACION PULSO UNICOCristhian Fernandez
 
Tema vi guia de c
Tema vi guia de cTema vi guia de c
Tema vi guia de cMaye Re
 
Herramientas y Desarrollo de Software
Herramientas y Desarrollo de SoftwareHerramientas y Desarrollo de Software
Herramientas y Desarrollo de SoftwareCristina1139
 
Estructuras algoritmicas representación
Estructuras algoritmicas representaciónEstructuras algoritmicas representación
Estructuras algoritmicas representaciónBenjamin Medina Ramirez
 
Mini Tutorial De Matlab
Mini Tutorial De MatlabMini Tutorial De Matlab
Mini Tutorial De Matlabguestdb8ea2b
 

Similar a VBA Interfaz de usuario (20)

Presentación interfaz gráfica_matlab
Presentación interfaz gráfica_matlabPresentación interfaz gráfica_matlab
Presentación interfaz gráfica_matlab
 
Matlab
MatlabMatlab
Matlab
 
Matlab
MatlabMatlab
Matlab
 
Graficas matlab
Graficas matlabGraficas matlab
Graficas matlab
 
Visual basic 1º Año
Visual basic  1º AñoVisual basic  1º Año
Visual basic 1º Año
 
DIAPOSITIVA - GUIDE.pptx-----------------------------
DIAPOSITIVA - GUIDE.pptx-----------------------------DIAPOSITIVA - GUIDE.pptx-----------------------------
DIAPOSITIVA - GUIDE.pptx-----------------------------
 
Entrada y salida, manejo de cadenas de texto
Entrada y salida, manejo de cadenas de textoEntrada y salida, manejo de cadenas de texto
Entrada y salida, manejo de cadenas de texto
 
ProgramacióN Orientada A Objetos
ProgramacióN Orientada A ObjetosProgramacióN Orientada A Objetos
ProgramacióN Orientada A Objetos
 
Algoritmo
AlgoritmoAlgoritmo
Algoritmo
 
2012 interfaz grafica en guide matlab
2012 interfaz grafica en guide matlab2012 interfaz grafica en guide matlab
2012 interfaz grafica en guide matlab
 
Elementos Básicos en Delphi 7
Elementos Básicos en Delphi 7Elementos Básicos en Delphi 7
Elementos Básicos en Delphi 7
 
Modulos y funciones en VBA
Modulos y funciones en VBAModulos y funciones en VBA
Modulos y funciones en VBA
 
Clases De Objetos Principales De As3
Clases De Objetos Principales De As3Clases De Objetos Principales De As3
Clases De Objetos Principales De As3
 
VBA Interfaz de usuario
VBA Interfaz de usuarioVBA Interfaz de usuario
VBA Interfaz de usuario
 
GUI EN MATLAB MODULACION PULSO UNICO
GUI EN MATLAB MODULACION PULSO UNICOGUI EN MATLAB MODULACION PULSO UNICO
GUI EN MATLAB MODULACION PULSO UNICO
 
Tema vi guia de c
Tema vi guia de cTema vi guia de c
Tema vi guia de c
 
Herramientas y Desarrollo de Software
Herramientas y Desarrollo de SoftwareHerramientas y Desarrollo de Software
Herramientas y Desarrollo de Software
 
Estructuras algoritmicas representación
Estructuras algoritmicas representaciónEstructuras algoritmicas representación
Estructuras algoritmicas representación
 
Mini Tutorial De Matlab
Mini Tutorial De MatlabMini Tutorial De Matlab
Mini Tutorial De Matlab
 
Clases de Programación Android
Clases de Programación AndroidClases de Programación Android
Clases de Programación Android
 

Más de Andres Bedoya Tobon

Enums, constantes, listas e interfaces
Enums, constantes, listas e interfacesEnums, constantes, listas e interfaces
Enums, constantes, listas e interfacesAndres Bedoya Tobon
 
Taller estudio - Estructuras de control VBA - Excel
Taller estudio - Estructuras de control VBA - ExcelTaller estudio - Estructuras de control VBA - Excel
Taller estudio - Estructuras de control VBA - ExcelAndres Bedoya Tobon
 
Progra-Amando Medellin Tech Fest
Progra-Amando Medellin Tech FestProgra-Amando Medellin Tech Fest
Progra-Amando Medellin Tech FestAndres Bedoya Tobon
 
03 curso poo Valores por defecto - constructores
03 curso poo Valores por defecto - constructores03 curso poo Valores por defecto - constructores
03 curso poo Valores por defecto - constructoresAndres Bedoya Tobon
 
Excel - Variables y condicionales
Excel - Variables y condicionalesExcel - Variables y condicionales
Excel - Variables y condicionalesAndres Bedoya Tobon
 
Elementos de programacion - Excel
Elementos de programacion - ExcelElementos de programacion - Excel
Elementos de programacion - ExcelAndres Bedoya Tobon
 
Programación y diseño orientado a objetos
Programación y diseño orientado a objetosProgramación y diseño orientado a objetos
Programación y diseño orientado a objetosAndres Bedoya Tobon
 
Progra-amando <3 (Amor por la programación)
Progra-amando <3 (Amor por la programación)Progra-amando <3 (Amor por la programación)
Progra-amando <3 (Amor por la programación)Andres Bedoya Tobon
 
Presentación 13 Paso por referencia
Presentación 13 Paso por referenciaPresentación 13 Paso por referencia
Presentación 13 Paso por referenciaAndres Bedoya Tobon
 

Más de Andres Bedoya Tobon (20)

Enums, constantes, listas e interfaces
Enums, constantes, listas e interfacesEnums, constantes, listas e interfaces
Enums, constantes, listas e interfaces
 
Taller estudio - Estructuras de control VBA - Excel
Taller estudio - Estructuras de control VBA - ExcelTaller estudio - Estructuras de control VBA - Excel
Taller estudio - Estructuras de control VBA - Excel
 
Progra-Amando Medellin Tech Fest
Progra-Amando Medellin Tech FestProgra-Amando Medellin Tech Fest
Progra-Amando Medellin Tech Fest
 
04 curso poo Herencia
04 curso poo Herencia04 curso poo Herencia
04 curso poo Herencia
 
03 curso poo Valores por defecto - constructores
03 curso poo Valores por defecto - constructores03 curso poo Valores por defecto - constructores
03 curso poo Valores por defecto - constructores
 
02 curso poo Clase - Objeto
02 curso poo Clase - Objeto02 curso poo Clase - Objeto
02 curso poo Clase - Objeto
 
01 curso poo Funciones
01 curso poo Funciones01 curso poo Funciones
01 curso poo Funciones
 
Excel - Variables y condicionales
Excel - Variables y condicionalesExcel - Variables y condicionales
Excel - Variables y condicionales
 
Excel - Macros
Excel - MacrosExcel - Macros
Excel - Macros
 
Elementos de programacion 02
Elementos de programacion 02Elementos de programacion 02
Elementos de programacion 02
 
Taller de estudio - Excel
Taller de estudio - ExcelTaller de estudio - Excel
Taller de estudio - Excel
 
Elementos de programacion - Excel
Elementos de programacion - ExcelElementos de programacion - Excel
Elementos de programacion - Excel
 
Automatizar tareas usando GAP
Automatizar tareas usando GAPAutomatizar tareas usando GAP
Automatizar tareas usando GAP
 
Pull request - Hacktoberfest
Pull request - Hacktoberfest Pull request - Hacktoberfest
Pull request - Hacktoberfest
 
Abc tipografico Medellin CSS
Abc tipografico Medellin CSSAbc tipografico Medellin CSS
Abc tipografico Medellin CSS
 
Programación y diseño orientado a objetos
Programación y diseño orientado a objetosProgramación y diseño orientado a objetos
Programación y diseño orientado a objetos
 
Clean code
Clean codeClean code
Clean code
 
Progra-amando <3 (Amor por la programación)
Progra-amando <3 (Amor por la programación)Progra-amando <3 (Amor por la programación)
Progra-amando <3 (Amor por la programación)
 
Presentación 13 Paso por referencia
Presentación 13 Paso por referenciaPresentación 13 Paso por referencia
Presentación 13 Paso por referencia
 
Presentación 12 Paso por copia
Presentación 12 Paso por copiaPresentación 12 Paso por copia
Presentación 12 Paso por copia
 

Último

Mapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdfMapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdfvictorbeltuce
 
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARONARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFAROJosé Luis Palma
 
CIENCIAS NATURALES 4 TO ambientes .docx
CIENCIAS NATURALES 4 TO  ambientes .docxCIENCIAS NATURALES 4 TO  ambientes .docx
CIENCIAS NATURALES 4 TO ambientes .docxAgustinaNuez21
 
Estrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdfEstrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdfromanmillans
 
La evolucion de la especie humana-primero de secundaria
La evolucion de la especie humana-primero de secundariaLa evolucion de la especie humana-primero de secundaria
La evolucion de la especie humana-primero de secundariamarco carlos cuyo
 
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdf
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdfTema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdf
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdfDaniel Ángel Corral de la Mata, Ph.D.
 
FICHA DE MONITOREO Y ACOMPAÑAMIENTO 2024 MINEDU
FICHA DE MONITOREO Y ACOMPAÑAMIENTO  2024 MINEDUFICHA DE MONITOREO Y ACOMPAÑAMIENTO  2024 MINEDU
FICHA DE MONITOREO Y ACOMPAÑAMIENTO 2024 MINEDUgustavorojas179704
 
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptxPresentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptxYeseniaRivera50
 
Tarea 5-Selección de herramientas digitales-Carol Eraso.pdf
Tarea 5-Selección de herramientas digitales-Carol Eraso.pdfTarea 5-Selección de herramientas digitales-Carol Eraso.pdf
Tarea 5-Selección de herramientas digitales-Carol Eraso.pdfCarol Andrea Eraso Guerrero
 
periodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicasperiodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicas123yudy
 
Los Nueve Principios del Desempeño de la Sostenibilidad
Los Nueve Principios del Desempeño de la SostenibilidadLos Nueve Principios del Desempeño de la Sostenibilidad
Los Nueve Principios del Desempeño de la SostenibilidadJonathanCovena1
 
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdf
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdfBIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdf
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdfCESARMALAGA4
 
Fundamentos y Principios de Psicopedagogía..pdf
Fundamentos y Principios de Psicopedagogía..pdfFundamentos y Principios de Psicopedagogía..pdf
Fundamentos y Principios de Psicopedagogía..pdfsamyarrocha1
 
Día de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialDía de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialpatriciaines1993
 
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxPPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxOscarEduardoSanchezC
 

Último (20)

Mapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdfMapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdf
 
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARONARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
 
CIENCIAS NATURALES 4 TO ambientes .docx
CIENCIAS NATURALES 4 TO  ambientes .docxCIENCIAS NATURALES 4 TO  ambientes .docx
CIENCIAS NATURALES 4 TO ambientes .docx
 
Estrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdfEstrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdf
 
La evolucion de la especie humana-primero de secundaria
La evolucion de la especie humana-primero de secundariaLa evolucion de la especie humana-primero de secundaria
La evolucion de la especie humana-primero de secundaria
 
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdf
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdfTema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdf
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdf
 
FICHA DE MONITOREO Y ACOMPAÑAMIENTO 2024 MINEDU
FICHA DE MONITOREO Y ACOMPAÑAMIENTO  2024 MINEDUFICHA DE MONITOREO Y ACOMPAÑAMIENTO  2024 MINEDU
FICHA DE MONITOREO Y ACOMPAÑAMIENTO 2024 MINEDU
 
Earth Day Everyday 2024 54th anniversary
Earth Day Everyday 2024 54th anniversaryEarth Day Everyday 2024 54th anniversary
Earth Day Everyday 2024 54th anniversary
 
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptxPresentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
 
TL/CNL – 2.ª FASE .
TL/CNL – 2.ª FASE                       .TL/CNL – 2.ª FASE                       .
TL/CNL – 2.ª FASE .
 
Tarea 5-Selección de herramientas digitales-Carol Eraso.pdf
Tarea 5-Selección de herramientas digitales-Carol Eraso.pdfTarea 5-Selección de herramientas digitales-Carol Eraso.pdf
Tarea 5-Selección de herramientas digitales-Carol Eraso.pdf
 
periodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicasperiodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicas
 
Los Nueve Principios del Desempeño de la Sostenibilidad
Los Nueve Principios del Desempeño de la SostenibilidadLos Nueve Principios del Desempeño de la Sostenibilidad
Los Nueve Principios del Desempeño de la Sostenibilidad
 
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdf
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdfBIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdf
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdf
 
VISITA À PROTEÇÃO CIVIL _
VISITA À PROTEÇÃO CIVIL                  _VISITA À PROTEÇÃO CIVIL                  _
VISITA À PROTEÇÃO CIVIL _
 
Fundamentos y Principios de Psicopedagogía..pdf
Fundamentos y Principios de Psicopedagogía..pdfFundamentos y Principios de Psicopedagogía..pdf
Fundamentos y Principios de Psicopedagogía..pdf
 
Sesión La luz brilla en la oscuridad.pdf
Sesión  La luz brilla en la oscuridad.pdfSesión  La luz brilla en la oscuridad.pdf
Sesión La luz brilla en la oscuridad.pdf
 
PPTX: La luz brilla en la oscuridad.pptx
PPTX: La luz brilla en la oscuridad.pptxPPTX: La luz brilla en la oscuridad.pptx
PPTX: La luz brilla en la oscuridad.pptx
 
Día de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialDía de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundial
 
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxPPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
 

VBA Interfaz de usuario

  • 1.
  • 2. Interfaz gráfica de usuario  Variables globales  Generalidades formularios  Manipulación de datos  Botones de opción  Uso de imágenes  Ejercicios de estudio
  • 3. Variables globales Consideraremos variable global, a una variable que esta disponible (compartida) en los diferentes ámbitos del programa (espacio adentro de cada subrutina o función). Para declarar una variable global, basta con declararla al principio del código. Se recomienda el uso de las palabras reservadas “Option Explicit” para obligar a VBA a validar la declaración correcta de todas las variables que use la aplicación
  • 4. Variables globales Option Explicit Dim contador As Integer Private Sub cmdBoton1_Click() contador = contador + 1 End Sub Private Sub cmdBoton2_Click() contador = contador - 1 End Sub La variable contador es global en el programa, por tanto su valor puede ser modificado en dos subrutinas diferentes.
  • 5. Generalidades formularios  Un formulario es la ventana contenedora de las aplicaciones que usan interfaz gráfica.  Se recomienda cambiar la propiedad Caption para que la ventana de la aplicación tenga un nombre que represente el programa.  Se recomienda cambiar la propiedad Name para que el formulario tenga un nombre de variable adecuado. (ej: frmJuego)
  • 6. Generalidades formularios  Se recomienda el uso de la subrutina Initialize, para asignar valores por defecto que va a tener el formulario al principio de la ejecución del programa. De tal forma que cada vez que se ejecute el programa inicialice con estos valores. Por lo general en esta subrutina se inicializan las variables globales.
  • 7. Generalidades formularios Option Explicit Dim numeroVidas as Integer Private Sub UserForm_Initialize() numeroVidas = 3 End Sub La variable global vidas, se inicializa en la subrutina UserForm_Initialize, de tal forma que cada que se ejecuta el programa el número de vidas siempre será 3.
  • 8. Manipulación de datos Es importante recordar como se debe manipular los datos de una aplicación que use interfaz gráfica.  Los campos de texto (TextBox) y los mensajes InputBox, siempre retornan valores de cadena con la información que el usuario ingresa, por tanto siempre se debe validar que las cadenas se puedan convertir a número antes de realizar operaciones aritméticas.
  • 9. Manipulación de datos  Ejemplo InputBox Dim str As String str = InputBox("Ingrese un dato numérico") If IsNumeric(str) Then MsgBox "El dato es correcto, se puede operar" Else MsgBox "El dato no se puede operar aritméticamente" End If
  • 10. Manipulación de datos  Ejemplo textbox If IsNumeric(txtCampo.Text) Then MsgBox "El dato es correcto, se puede operar“ Else MsgBox "El dato no se puede operar aritméticamente" End If
  • 11. Botones de opción  El botón de opción o optionButton, es un elemento gráfico que permite crear una selección mutuamente excluyente en el programa. Se usa para controlar el modo de ejecución o de habilitar o deshabilitar opciones dentro del programa. Es un componente de selección única.
  • 12. Botones de opción  Gráficamente, este control se ve así Normalmente este elemento se relaciona con dos o más elementos del mismo tipo, para crear un grupo de opciones mutuamente excluyentes.
  • 13. Botones de opción  Además para poder lograr que la selección del elemento cambie al seleccionar otro botón de opción, se debe vincular cada elemento con un grupo. Para hacer esto se debe asignar el mismo nombre a la propiedad GroupName.
  • 14. Botones de opción  Si se vinculan todos los campos de selección correctamente al grupo, al probar el programa, se debe pasar la selección entre los diferentes botones de opción, al hacer clic sobre cada uno. Es posible controlar las acciones en el programa, asociando una subrutina que atienda el evento clic sobre cada control, así: Private Sub optOpcion1_Click() ‘código al seleccionar el botón de opción End Sub Además es posible conocer el valor seleccionado de cada botón de opción por medio de la propiedad value.
  • 15. Imágenes  Ruta absoluta: Es la ubicación de un recurso, respecto a la raíz del sistema de archivos del sistema operativo. Ejemplo: C:UsersUsuarioPictureslogo.jpg  Ruta relativa: Es la ubicación de un recurso respecto a la carpeta actual. Ejemplo: “imágenes/logo.jpg” Nota: Se recomienda usar siempre la ruta relativa, para que el programa funcione correctamente independiente de la ubicación de los archivos.
  • 16. Imágenes  Para usar imágenes en la aplicación, se recomienda usar el elemento Image. Para tal fin se debe dibujar el elemento en el formulario y asignar el valor del ancho y del alto (width, height).  Para cambiar el valor de la imagen en tiempo de ejecución, se debe usar la propiedad Picture, pasando la ruta relativa donde esta ubicada la imagen.
  • 17. Imágenes Cambio de la imagen que se muestra en el contenedor image. Option Explicit Dim contador As Integer Private Sub CommandButton1_Click() Dim temp as String temp = "imagenes/img_0" & contador & ".jpg" contador = contador + 1 If contador <7 then imgImagen.Picture = LoadPicture(temp) End if End Sub Cada que se presiona el botón, se cambia la imagen del control imgImagen. Se tiene en total 7 imágenes con un nombre secuencial con el prefijo img_0 y con extensión .jpg, así: img_01.jpg.
  • 18. Imágenes El siguiente código permite cambiar la imagen usando una subrutina que recibe un parámetro que es el nombre de la imagen Sub CambiarRuta(imagen) Dim ruta As String ruta = ThisWorkbook.Path & Application.PathSeparator_ & "imagenes" & Application.PathSeparator & imagen imgEmoji.Picture = LoadPicture(ruta) End Sub Para invocar la rutina se usa Private Sub optOpcion1_Click() CambiarRuta ("Google-Noto-Emoji-Smileys-10029-face-with-rolling-eyes.ico") End Sub
  • 19. Imágenes Recomendaciones para usar correctamente imágenes en un programa:  Crear una secuencia de imágenes que tengan las mismas dimensiones de alto y ancho, si las imágenes se van a sobreponer.  Mantener la proporción del ancho respecto al alto, para evitar que la imagen se deforme.  Nombrar cada imagen con un nombre secuencia, sin caracteres especiales o espacios.  Ubicar las imágenes en una carpeta, en la misma carpeta del programa.
  • 20. Ejercicios  Realizar un programa que por medio de interfaz grafica permita pedir un número n, y muestre en un MsgBox el resultado de la suma de 0 hasta n, el promedio y la respuesta invertida en un campo de texto.  Usar un grupo de dos botones de opción, para seleccionar el modo de conversión. (binario o decimal) y al cambiar de selección se debe convertir un valor numérico presente en un campo de texto.
  • 21. Ejercicios  Crear un programa que permita calcular la suma de dos vectores de dimensión 3, representados en 6 campos de texto.  Escribir un programa que permita realizar conversiones entre unidades de distancia.  Escribir un programa que permita Eliminar los dígitos del 0 al 9 presentes en una cadena.