Está en la página 1de 5

VARIABLES

Double - Números con comas infinitos


Integer - Números enteros infinitos
String - Texto
Byte - Números entre 1 y 256
Date - Fecha
Object - Objeto o Documento
Currency - Dinero (números)

COMANDOS PARA FORMULARIOS Y OBJETOS


 Para que un botón se mantenga seleccionado
Botón - Propiedades – Value – True
 Darle nombre a una nueva hoja y crearla
Sheets.Add after:=Worksheets("Nombre")
ActiveSheets.Name = Name
 Agregar item manualmente a combo box
Cmb.AddItem Range("Columna" & Trim(Fila)).Value
Cmb.AddItem “Nombre de item”
 Para bloquear objeto
Objeto – Propiedades – Locked – True
 Para deshabilitar objeto
1. Desde el objeto se va a Objeto – Propiedades – Enabled – False
2. Desde la programación es = Objeto.Enable = False
 Para habilitar objeto
1. Desde el objeto se va a Objeto – Propiedades – Enabled – True
2. Desde la programacion es = Objeto.Enable = True
 Para poner mayúsculas a algo
UCase$(Objeto o variable)
 Cerrar un formulario para pasar a otro
o Unload me Lo cierrra
o Formulario.show Muestra el otro formulario

COMANDOS PARA PROGRAMACIÓN


 Buscar algo dentro de texto grande
If InStr(Range("Columna" & Trim(Fila)).value , "Lo que se busca") <> 0 Then
------------
End if
 Configuraciones de las celdas
o Combinar celdas
Range ("Celdas").Merge
o Poner en negrita
Range ("Celdas ").Font.Bold = True
o Alineación del texto de la celda
Range ("Celdas ").HorizontalAlignment = xlCenter
o Color de la letra de la celda
Range ("Celdas ").Font.ColorIndex = 2
o Color del fondo de la celda
Range ("Celdas ").Interior.ColorIndex = 2

También se puede usar with ” si son varias configuraciones para la misma celda
With Range("A3:H3")
.HorizontalAlignment = xlCenter
.Font.ColorIndex = 49
.Font.Bold = True
End With

COMPROBACIONES DE VALORES
Para comprobar si un dato es numérico, que de lo contrario mande un mensaje

Private Sub Objeto_Change() Cada vez que el objeto cambie


If IsNumeric(Objeto.Value) Then Si el valor es numérico continua

________
Else
MsgBox ("Por favor ingrese solo datos numéricos") Sino manda un mensaje
End If
End Sub

Para comprobar si un dato es numérico, que de lo contrario mande un mensaje

Private Sub Objeto_Change() Cada vez que el objeto cambie


If IsNumeric(Objeto.Value) Then Si el valor no es numérico continua (texto)
________
Else
MsgBox ("Por favor ingrese solo datos de texto") Sino manda un mensaje
End If
End Sub

Para decirle al usuario si quiere continuar o no (o repetir la función)

Dim Respuesta As Byte Registrar la variable


Continuar = True Vamos a continuar hasta que el usuario quiera seguir
While Continuar Si continuar es verdadero entra en el ciclo
Respuesta = MsgBox ("¿Desea consolidar el archivo de otra pulpería?", vbYesNo)
If Respuesta = 7 Then
Continuar = False Si la respuesta es no entonces continuar es falso y no entra en ciclo
End If
Wend
BÚSQUEDAS DE VALORES
Pasos para sacar valores de hoja a programa

1. Definir las variables


Dim Ultima_fila as integer, fila as byte

2. Activar la hoja que se va usar


Worksheets("Hoja").Activate
3. Se extrae la posición de la última fila
Ultima_fila = ActiveSheet.Cells(Rows.Count, "A").End(xlUp).Row
4. Realiza la búsqueda
4.1. Ciclo con For
For (fila=4 (primera fila del cuadro) to Ultima_fila)
If Range(“B” & trim (fila). Value = nombre
IDtxt.value = Range (“A” & trim(fila)).value
Generotxt = Range (“C” & trim(fila)).value
Lo que pasa cuando lo encuentra (supongamos que se pidió que si la fecha
conincide con la registrada el valor del cuadro de texto sea el id de ese nombre
End if
Next
4.2. Busqueda con set
Set Registro (Variable de rango) = Range (celdas).Find (NombreCmb.value,
LookIn:=xlValues) Para encontrar la posicion de valor
If not (Registro is nothing) then
IDtxt.value = Range (“A” & trim(Registro.row)).value
End if

Supongamos que queremos saber cuántas personas tienen 2 perros


Dim ultima_fila as integer, fila as integer Define variables
Ultima_fila = ActiveSheet.Cells(Rows.Count, "A").End(xlUp).Row Define última fila
For fila=2 to ultima_fila Hace el ciclo
Ejemplo 1 If Val(Perrotxt)=2 Condición para objeto
Ejemplo 2 If Range (“A” & trim(fila)).value = 2 Condición para celda
Contador = contador +1 Contador
End if Cierra el If
Next
Cierra el ciclo
Cuando se deben buscar valores en base a objetos
1. Activar la hoja que se va usar
Worksheets(“Hoja”).Activate

2. Condicion
a. Condicion If
Supongamos que le piden que Movilidad sea en base al boton seleccionado
If Opc40 Then Si ese botón esta activado
MovilidadTxt.Value = Range("C4") Se asigna el rango al txt
ElseIf Opc39 Then Si no es el anterior sino este
MovilidadTxt.Value = Range("C5") Se asigna este rango al txt
End if
Repite el proceso las veces que sean necesarias

b. Condicion case
Supongamos que le piden que ubique la cantidad de puntos obtenidos según
el ITN y el ITN va por rangos
Select case Val(puntostxt)
Case 57 To 79
NuevoITNTxt.Value = "Itn10"
End select

Para pasar valores de un libro a otro


1. Declarar variables
Public Archivo_fuente As String, NombreLocal As String
2. Guardar los archivos en variables para activar más fácil
Archivo_fuente = Application.GetOpenFilename("Excel files (*.xlsx), *.xlsx")
El asterisco hace referencia a cualquier cosa, en este caso el nombre del archivo, esto
le pedirá que abra un archivo con esa extensión
Set Arch_destino = Workbooks.Open(ThisWorkbook.Path & "\" & "DN0103 Práctica
VBA #06 - Ventas 2019 - Embutidos y quesos")
También se puede definir el archivo directamente
3. Se activa el libro de donde salen los datos
Archivo_fuente.Activate
4. Se guardan los datos que se ocupan en las variables correspondientes
Periodo = Range("A" & Trim(Linea_Lectura)).Value
Producto = Range("A" & Trim(Linea_Lectura)).Value …
Linea_Lectura = Linea_Lectura+1
Se le suma al contador para que avance luego con la otra fila
5. Se pasa al otro libro
Arch_destino.Activate
6. Guarda la información de las variables en las celdas correspondientes
Range("A" & Trim(Linea_Escritura)).Value = NombreLocal
Range("B" & Trim(Linea_Escritura)).Value = Periodo
Range("C" & Trim(Linea_Escritura)).Value = Producto

COSAS IMPORTANTES PARA TOMAR EN CUENTA


 Para pasar de una hoja a otra es necesario guardar todo en variables, de esa forma
activamos la hoja 1, guardamos la información en variables, luego activamos la hoja 2 y
pasamos la información guardada en las variables a la otra hoja.
 Cuando usamos una funcion o un sub en llamada podemos darle una variable y
cambiarle el nombre al recibirlo, sin cambiar lo que se almacena dentro de la variable
o Call Consolidar(Archivo_fuente)
o Sub Consolidar(NombreArchivo As String)
 Para usar una variable que vamos a usar en varias funciones debemos declararla como
publica
 Si igualamos una variable a “Date” nos da la fecha actual
o Dim Fecha as date
o Fecha = Date

También podría gustarte