Esta macro
nos permite ingresar datos numéricos desde un formulario de forma práctica y
sencilla.
Primero
creamos u formulario como el que se muestra a continuación.
A los cuadros
de texto les ponemos los siguientes nombres, para ello seleccionamos el cuadro
de texto y cambiamos su nombre en el cuadro de propiedades, de la siguiente
manera:
(Name)=VALOR 1
(Name)=VALOR 2
(Name)=VALOR 3
(Name)=VALOR 4
Así como se muestra en la siguiente imagen.
También
cambiamos los nombres de los botones grabar y salir respectivamente.
(Name)=CMDGRABAR
(Name)=CMDSALIR
Como en la imagen siguiente.
¡Listo!, una vez hecho eso le damos doble clic al botón LLEVAR A
EXCEL para ir a visual basic y comenzar la programación de dicho
botón, que es la siguiente.
Private Sub CMDGRABAR_Click()
Sheets("valor").Select
NR =
Application.WorksheetFunction.CountA(Range("A:A"))
If VALOR1 = "" Then
MsgBox "INGRESE VALOR1"
VALOR1.SetFocus
Else
If Not (IsNumeric(VALOR1)) Then
MsgBox "EL VALOR1 DEBE SER
NUMEROS"
VALOR1 = ""
VALOR1.SetFocus
Exit Sub
End If
End If
If VALOR2 = "" Then
MsgBox "INGRESE VALOR2"
VALOR2.SetFocus
Else
If Not (IsNumeric(VALOR2)) Then
MsgBox "EL VALOR2 DEBE SER
NUMEROS"
VALOR2 = ""
VALOR2.SetFocus
Exit Sub
End If
End If
If VALOR3 = "" Then
MsgBox "INGRESE VALOR3"
VALOR3.SetFocus
Exit Sub
Else
If Not (IsNumeric(VALOR3)) Then
MsgBox "EL VALOR3 DEBE SER
NUMEROS"
VALOR3 = ""
VALOR3.SetFocus
Exit Sub
End If
End If
If VALOR4 = "" Then
MsgBox "INGRESE VALOR4"
VALOR4.SetFocus
Exit Sub
Else
If Not (IsNumeric(VALOR4)) Then
MsgBox "EL VALOR4 DEBE SER NUMEROS"
VALOR4 = ""
VALOR4.SetFocus
Exit Sub
End If
End If
Cells(NR + 1, 1) = Val(VALOR1)
Cells(NR + 1, 2) = Val(VALOR2)
Cells(NR + 1, 3) = Val(VALOR3)
Cells(NR + 1, 4) = Val(VALOR4)
Cells(NR + 1, 5) = Val(VALOR1) + Val(VALOR2) + Val(VALOR3) + Val(VALOR4)
Cells(NR + 1, 6) = Cells(NR +
1, 5) / 4
VALOR1 = ""
VALOR2 = ""
VALOR3 = ""
VALOR4 = ""
VALOR1.SetFocus
End Sub
Ahora vamos al Excel y desde la ficha
programador vamos a insertar un botón de comando, también añadimos texto como
se muestra en la siguiente imagen.
El nombre de la hoja le ponemos “valor”, como se muestra en la
imagen.
Ahora damos doble clic a nuestro botón FORMULARIO INICIO para
ir a visual basic donde programamos lo siguiente.
Private Sub CMDINICIO_Click()
frminicio.Show
End Sub
Como se muestra en la siguiente imagen.
Cells(NR + 1, 5) = Val(VALOR1) + Val(VALOR2) + Val(VALOR3) + Val(VALOR4)
En esta linea de código estamos realizando la suma de todos los valores ingresados, para ello colocamos Val para indicar que es un valor numérico, te recuerdo que los valores ingresados son reconocidos como cadena de texto por eso ponemos Val para su conversión a números.
Cells(NR + 1, 6) = Cells(NR + 1, 5) / 4
En esta linea de código estamos tomado como referencia el valor de la celda anterior para calcular el promedio.
Gracias por su visita :-D
No hay comentarios:
Publicar un comentario