Controles ActiveX: Botón de Comando (Programando Código VBA Parte 2)

En esta segunda parte de configuración VBA o adición de macros al Control Botón de Comando, vamos a dar una funcionalidad un poco más práctica adicional a la que tenemos donde se muestra un mensaje del botón que estamos seleccionando.

Se trata de una aplicación tipo formulario en la cual se ingresan unos datos básicos de las personas y luego con el uso de un botón, los grabamos en una base de datos:

La base de datos donde se almacenan la tenemos en la parte inferior de la hoja:

Como la idea es que al dar clic al botón Grabar, los datos registrados se guarden en la Base de Datos, debemos empezar programando dicho botón, así que estando en Modo Diseño damos clic derecho sobre este y seleccionamos Ver código para abrir el Editor de Visual Basic y programar la macro:

Vamos a colocar el siguiente código:

Range("B4:F4").Select

Selection.Copy

Range("B24").Select

Selection.End(xlDown).Select

ActiveCell.Offset(1, 0).Select

ActiveSheet.Paste

Application.CutCopyMode = False

Range("B4").Select

La primera línea, Range("B4:F4").Select, lo que hace es seleccionar el rango B4:F4

La segunda línea, Selection.Copy, lo que hace es a la selección que hicimos, es decir al rango B4:F4, le damos Copiar (Ctrl + C) para tener en el Portapepeles lso datos que hay en dicho rango

La tercera línea, Range("B24").Select, lo que hace es ubicarnos en la celda B24, la cual es la fila que esta antes del encabezado de la base de datos:

La cuarta línea, Selection.End(xlDown).Select, lo que hace es desplazarse hasta el final de la lista de la base de datos; esto es necesario ya que la base de datos va aumentando y nos debemos ubicar al final de la lista para pegar los datos básicos que tenemos en el portapapeles según la línea 2

La quinta línea, ActiveCell.Offset(1, 0).Select, lo que hace es una vez nos desplazamos hasta el final de la base de datos es necesario ubicarnos una celda abajo que es la primera fila vacía de la base de datos.

La sexta línea ActiveSheet.Paste lo que hace es pegar (o dar Ctrl + V) a los datos

La séptima línea, Application.CutCopyMode = False, lo que hace es borrar del Portapapeles los datos básicos del rango B4:F4 al que habíamos dado la instrucción Ctrl + C

La última línea, Range("B4").Select, lo que hace es seleccionar la celda B4 para ubicarnos nuevamente en la parte superior.

Vamos a probar la programación de Botón de Comando “Grabar” en la hoja Excel:

Insertemos los datos de otra persona y demos Grabar:

Vemos que efectivamente va llenando la base de datos con la información de los clientes.

Solo falta programar el botón Borrar para que una vez se graben los datos de los clientes, demos Clic a este botón de comando para borrar la información del rango de datos. Para ello damos clic derecho (estando en Modo Diseño) al botón “Cancelar”, Ver código y colocamos lo siguiente:

Range("B4:F4").Select

Selection.ClearContents

Vamos a probar el resultado en la hoja Excel:

Damos Clic en el botón Borrar…

Descargar archivo de trabajo.

MÁS SOBRE

Gerencie.com en su correo.

Suscríbase y nosotros colocaremos en su bandeja de entrada la mejor información que generamos diariamente.

Siéntase libre de opinar

En Gerencie.com está permitido opinar, criticar, discutir, controvertir, disentir, etc. Lo que no está permitido es insultar o escribir palabras ofensivas o soeces. Si lo hace, su comentario será rechazado por el sistema o será eliminado por el administrador. Por último, trate de no escribir en mayúscula sostenida, resulta muy difícil leerle.