Programación VBA en Excel para Gestión de Datos y Automatización
Enviado por Chuletator online y clasificado en Informática y Telecomunicaciones
Escrito el en
español con un tamaño de 5,17 KB
Implementación de Seguridad y Control de Acceso en VBA
Procedimiento de Ingreso al Sistema
Private Sub CommandButton_INGRESAR_Click()
If TextBox_USUARIO = "SATD" And TextBox_CLAVE = "1234" Then
UserForm2.Show
Unload Me
Else
MsgBox "Usuario o clave incorrecta"
TextBox_USUARIO = ""
TextBox_CLAVE = ""
End If
End Sub
Procedimiento de Cancelación
Private Sub CommandButton_CANCELAR_Click()
Unload Me
End Sub
Gestión de Registros y Validación de Datos
Procedimiento para Guardar Información
Private Sub CommandButton_GUARDAR_Click()
Dim fila As Long
Dim sexo As String
Dim RutCompleto As String
'Validar selección del DV
If ComboBox_DV = "" Then
MsgBox "Debe seleccionar el dígito verificador"
Exit Sub
End If
'Determinar sexo
If OptionButton_MASCULINO = True Then
sexo = "MASCULINO"
ElseIf OptionButton_FEMENINO = True Then
sexo = "FEMENINO"
Else
MsgBox "Debe seleccionar un sexo"
Exit Sub
End If
'Construir RUT completo
RutCompleto = TextBox_RUT & "-" & ComboBox_DV
'Elegir celda
If Sheets("Hoja1").Range("B11") = "" Then
fila = 11
Else
fila = Sheets("Hoja1").Cells(Rows.Count, 2).End(xlUp).Row + 1
End If
'Guardar datos
Sheets("Hoja1").Cells(fila, 2) = RutCompleto
Sheets("Hoja1").Cells(fila, 3) = TextBox_NOMBRE
Sheets("Hoja1").Cells(fila, 4) = TextBox_APELLIDO
Sheets("Hoja1").Cells(fila, 5) = TextBox_CIUDAD
Sheets("Hoja1").Cells(fila, 6) = sexo
Call OrdenarApellido
MsgBox "Registro guardado correctamente"
'Limpiar controles
TextBox_RUT = ""
ComboBox_DV = ""
TextBox_NOMBRE = ""
TextBox_APELLIDO = ""
TextBox_CIUDAD = ""
OptionButton_MASCULINO = False
OptionButton_FEMENINO = False
TextBox_RUT.SetFocus
End Sub
Inicialización del Formulario de Usuario
Private Sub UserForm_Initialize()
ComboBox_DV.AddItem "0"
ComboBox_DV.AddItem "1"
ComboBox_DV.AddItem "2"
ComboBox_DV.AddItem "3"
ComboBox_DV.AddItem "4"
ComboBox_DV.AddItem "5"
ComboBox_DV.AddItem "6"
ComboBox_DV.AddItem "7"
ComboBox_DV.AddItem "8"
ComboBox_DV.AddItem "9"
ComboBox_DV.AddItem "K"
End Sub
Uso de Funciones Avanzadas en Excel
Búsqueda Dinámica con BUSCARV y COINCIDIR
=BUSCARV(B25; 'Datos Ej1'!$D$11:$F$17; COINCIDIR("Nombre"; 'Datos Ej1'!$D$10:$F$10; 0); 0)
=BUSCARV(ID_Vendedor; Matriz_de_Datos$; COINCIDIR("Nombre_Encabezado"; Encabezados_Matriz$; 0); 0)
Conceptos Fundamentales de Excel y VBA
- El símbolo & sirve para concatenar: VERDADERO.
- La propiedad Caption sirve para cambiar el tamaño del texto de los elementos incluidos en el formulario: FALSO. (La propiedad correcta es Font).
- Cuando programa una función, la debo hacer en un módulo para que funcione correctamente: VERDADERO.
- En la función SI debo indicar un resultado en caso de que se cumpla la prueba lógica indicada y otro resultado en caso de que no se cumpla: VERDADERO.
- En Excel solo tengo la posibilidad de usar las funciones que vienen incorporadas: FALSO. (Se pueden programar funciones personalizadas en VBA).
- Cuando uso la función BUSCARV junto con COINCIDIR, la función COINCIDIR entrega el número de columna asociado al encabezado: VERDADERO.
- Para fijar filas, columnas o ambos usamos la tecla F4 del teclado: VERDADERO. (Hay que tener cuidado en teclados en que esa tecla se active en conjunto con la tecla Fn).
- En BUSCARV el elemento buscado debe estar al final de la matriz, de lo contrario no encontraremos lo que necesitamos: FALSO. (El elemento buscado debe estar a la izquierda, es decir, ser la primera columna de la matriz).