Las macros de Excel, son una herramienta muy potente cuando de automatizar tareas repetitivas en Excel se trata, así como también cuentan con un alcance muy extenso. Evolucionar la habilidad de trabajar con dicha herramienta, representa capacitación y mucha práctica, debido a que las ordenes, funciones, procedimientos y sintaxis, son muy importantes aplicarlos de manera correcta al momento de trabajar en esta área.
Pasos para introducir datos en Excel usando macros
Paso 1. Lo primero que debes hacer es crear el formulario de captura e introducir los controles necesarios que te permitirán introducir los datos. Para esto, tienes que abrir el editor de Visual Basic y añadir el formulario desde el menú INSERTAR seguido de USER FORM. Utilizando el cuadro de herramientas, agregas las etiquetas, cuadros de textos y botones para obtener un formulario como el siguiente:
Paso 2. El código que debes ingresar para el botón cancelar, es tan sencillo como usar la instrucción Unload Me la cual te ayudará a cerrar dicho formulario. El código para el botón AGREGAR, en este caso será mucho más elaborado.
El código que debes ingresar para insertar datos en Excel con macros, es el siguiente a continuación:
PrivateSubCommandButton1_Click()
Dimfila AsLong
Dimduplicados AsBoolean
'Obtener la fila disponible
fila = Application.WorksheetFunction.CountA(Range("A:A")) + 1
duplicados = False
'Validar si se han ingresado datos duplicados
Fori = 1 Tofila
IfCells(i, 1).Value = UserForm1.TextBox1.Value Then
IfCells(i, 2).Value = UserForm1.TextBox2.Value Then
IfCells(i, 3).Value = UserForm1.TextBox3.Value Then
'Se encontraron datos duplicados
MsgBox "Datos duplicados en la fila "& i
duplicados = True
EndIf
EndIf
EndIf
Nexti
IfNotduplicados Then
'Insertar datos capturados
Cells(fila, 1).Value = UserForm1.TextBox1.Value
Cells(fila, 2).Value = UserForm1.TextBox2.Value
Cells(fila, 3).Value = UserForm1.TextBox3.Value
'Limpiar cajas de texto
UserForm1.TextBox1.Value = ""
UserForm1.TextBox2.Value = ""
UserForm1.TextBox3.Value = ""
'Notificar al usuario
MsgBox "Datos insertados en la fila "& fila
EndIf
EndSub
Una vez que pulses el botón AGREGAR, inicia la variable FILA, la cual guarda el resultado de la función CONTARA, la cual te indicará la cifra de las filas de Excel donde se deben colocar los datos. También debes inicializar la variable DUPLICADOS, la cual te indicará si los valores han sido ingresados previamente.
Antes de copiar los datos en la hoja de Excel, recuerda realizar un recorrido partiendo desde la primera columna de tu hoja, para que puedas comparar el valor de cada celda junto al valor de la caja de texto que contiene el nombre.