Ayuda con userform

Como hago para ingresar datos por un userform y que los datos en la hoja se oculten y cuando haga la búsqueda la hoja siga estando oculta
1

1 respuesta

Respuesta
1
Algo que puedes hacer es grabar los datos en un archivo .dat o .txt en vez de en una de las hojas del libro, así tus datos estarían en un lugar más seguro.
Si necesitas ayuda para realizar esa operación me escribes.
Cordial saludo Experto.
Me puedes orientar en como se realiza esto, muy agradecido por tu colaboración
Crea un userform con tres texbox y dos commandbutton
Y le pegas este código
Private Type Clientes ' aqui se define la variable que va a contener todos tus datos, puedes agregar mas campos si asi lo necesitas (el numero que aparece junto al asterisco es el largo de cada variable)
id As String * 5
Nombre As String * 20
apellido As String * 20
Telefono As String * 20
End Type
Private Sub CommandButton1_Click()
Dim x_clientes As Clientes
numero1 = FreeFile
Open "c:\datos.dat" For Random As numero1 Len = Len(x_clientes)
regUltimo = LOF(numero1) / Len(x_clientes)
indice = LOF(numero1) / Len(x_clientes) + 1
x_clientes.id = UCase(TextBox1.Text)
x_clientes.Nombre = UCase(TextBox2.Text)
x_clientes.apellido = UCase(TextBox3.Text)
x_clientes.Telefono = UCase(TextBox4.Text)
Put numero1, indice, x_clientes
Close numero1
MsgBox " Cliente Ingresado"
End Sub
Private Sub CommandButton2_Click()
Dim numero1 As Long
Dim x As Clientes
Dim referencia As Integer
referencia = InputBox("Indice de los datos a buscar")
numero1 = FreeFile
Open "c:\datos.dat" For Random As numero1 Len = Len(x)
Seek numero1, referencia
Get numero1, , x
TextBox1.Text = Trim(x.id)
TextBox2.Text = Trim(x.apellido)
TextBox3.Text = Trim(x.Nombre)
TextBox4.Text = Trim(x.Telefono)
Close numero1
Pruébalo espero te sirva, cualquier otra cosa estamos a la orden.
Cordial saludo Experto,
Tu ayuda me es muy útil, no sabes cuanto te lo agradezco, pero que me queda una duda
Este código
Private Type Clientes ' aqui se define la variable que va a contener todos tus datos, puedes agregar mas campos si asi lo necesitas (el numero que aparece junto al asterisco es el largo de cada variable)
id As String * 5
Nombre As String * 20
apellido As String * 20
Telefono As String * 20
End Type
Donde lo pego y segundo los números son los caracteresque puedo entrar.
Muy agradecido por tu colaboración
Lo pegas dentro del código del user form, o lo puedes pegar en un modulo pero le cambias el Private por public.
Si los números son el máximo de caracteres que pueden entrar por cada variable.
Que bueno que te haya servido.
Cordial saludo.
Experto sabes después de realizar lo que me indicaste no corre aparece un error al inicio
Dim x_clientes As clientes.
Revise y no seque es.
Muchas gracias por tu colaboración
La declaración de variables siempre tiene que antes que cualquier código. Ponlo a partir de la primera linea y debería funcionarte, tanto dentro del userform usando private como en un modulo usando public.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas