Lo que vamos a hacer en este ejemplo es a partir de un numero que se ingrese en una celda vamos a calcular su factorial pulsando un boton, en Excel 2003 recuerdo que era mas sencillo colocar un boton, para Office 2007 lo que tienen que hacer es ir al simbolo que esta en la esquina superior izquierda(el que esta al costado del diskette), le dan click y se van a opciones de excel
ahora en la ventana que les aparece se van a Personalizar y en el combo eligen todos los comandos, una vez aqui les va a salir una lista y se van al que dice Boton de Comando Control de Active X.
bueno hasta aqui lo que hemos logrado es mostrar el boton jajaj, pero aun no hace nada lo que vamos a hacer es Presionar ALT+F11 y nos va a salir el Editor de Visual Basic para Aplicaciones, una vez aqui vamos a declarar unas variables que vamos a usar para este programa, asi que en la primera linea pondremos
Option Explicitcon esto estamos forzando a definir el tipo de todas las variables(esto por las buenas practicas de programacion), ahora declaramos variables ya que al declararlas las macros se ejecutaran mas rapido y usaran menos memoria.
Ahora la sintaxis para declarar variables en VBA es:
Dim varname As type, varname As type,...una buena practica que se hace al programar es ubicar todas las declaraciones Dim al principio del programa y agruparlas por el mismo tipo, mas abajo entenderan a lo que me refiero.
Bueno esto seguro lo habran visto en varios foros o pdfs de programacion en c o en otro lenguaje pero aqui lo citare rapido y fugaz los tipos de variables numericas:
- Integers
- tipo Integer (el rango va de -32 768 a 32767 o 2 bytes)
- tipo Long (el rango va de -2 147 483 648 a 2 147 483 647 o 4 bytes)
- Real o floating point
- Tipo single (cerca de 7 digitos significativos de precision o 4 bytes)
- Tipo double (cerca de 15 digitos significativos de preicion o 8 bytes)
Option Explicit Sub factorialconmacro() Dim n As Single, c As Single, initial As Single Dim i As Integer 'input data 'Application.Workbooks("Libro1.xls").Worksheets("Hoja1"). Sheets("Hoja1").Select Range("B4").Select n = ActiveCell.Value initial = 1 'calculo For i = 1 To n 'calculamos el factorial c = initial * i initial = c Next i 'resultado de salida Range("B5").Select Cells(5, 1) = "El factorial es: " ActiveCell.Value = c End Suben este codigo estamos eligiendo que el numero se ingresara en la celda B4 de la Hoja1, y su factorial se mostrara en la misma hoja pero en la celda B5 el cual le enviamos con el valor de c.
Ahora para que el boton que pusimos mas arriba ejecute el codigo le damos doble click y les saldra algo asi
Private Sub CommandButton1_Click() End Sublo que tienen que hacer es poner dentro del evento click el nombre de la funcion
Private Sub CommandButton1_Click() factorialconmacro End SubComo ven aqui cuando pulsen el boton les saldra algo asi:
espero les haya servido este ejemplito, voy a tratar de poner mas y si es que no lo explique muy bien sorry me falta tiempo pero voy a tratar de poner too lo que pueda y si tienen alguna duda escribanmela por el chat que esta a su derecha y yo lo leere gracias por su tiempo :)
0 comentarios:
Publicar un comentario