Como cambiar esta parte del código
Amigo esperto melodiando por aqui tambien logre encontrar este ejemplo para usar un formulario con usuario y clave
En el ThisWorkbook utilizo esto según el ejemplo que aparece en este página de todoexpertos
Private Sub Workbook_Open()
Application.Visible = False
UserForm2.Show
End Sub
esto lo entiendo
En el Userform esta esto
Option Explicit
Private Sub CommandButton1_Click()
If TextBox1 = "" Then
MsgBox "Escriba su usuario", vbCritical
Exit Sub
End If
If TextBox2 = "" Then
MsgBox "Escriba su contraseña", vbCritical
Exit Sub
End If
Call valida_usuario(TextBox1 & ";" & TextBox2)
UserForm1.Show
Unload Me 'opcional seguir en el UF2 para permitir un nuevo ingreso de clave
End Sub
Private Sub CommandButton2_Click()
Unload Me
Application.Visible = False: ActiveWorkbook.Close
End Sub
Esto tambien lo entiendo
Pues hasta aquí estoy claro el problema se me presenta al momento que el formulario que se carga al comienzo me pide el nombre de usuario y la contraseña es decir no se como colocársela ya que en una parte del código que viene a continuación hay una linea de código que manda abrir un archivo llamado Password.txt y no se como hacer esto te coloque en negrilla lo que entiendo ya que yo quiero que me busque los datos en una tabla que tengo hecha en una hoja de excel, pero si con un archivo txt es más fácil por favor explicame y lo haré graciar de ante mano
Private Sub UserForm_Click()
End Sub
y en el modulo tengo esto:
Option Explicit
Public intento As Boolean
Dim f As Integer
luego el Sub valida_usuario(cadena As Variant) que asi:
Sub valida_usuario(cadena As Variant)
Dim Archivo1 As String
Dim error As Boolean
On Error GoTo err
Open (ActiveWorkbook.Path & "\Password.txt") For Input As #1
Do Until EOF(1)
Line Input #1, Archivo1
If cadena = Archivo1 Then error = True: Exit Do
DoEvents
Loop
If error = False Then
f = (f + 1)
If f = 4 Then Application.Visible = True: ActiveWorkbook.Close
MsgBox "La contraseña no es valida", vbCritical: Application.Visible = False: intento = False
Else
intento = True
Application.Visible = False
Unload UserForm2
End If
Close #1
err: If err.Number = 53 Then MsgBox "No se encuentra La tabla de contraseñas ", vbCritical
End Sub
el form que da asi:
Option Explicit
Private Sub CommandButton1_Click()
If TextBox1 = "" Then
MsgBox "Escriba su usuario", vbCritical
Exit Sub
End If
If TextBox2 = "" Then
MsgBox "Escriba su contraseña", vbCritical
Exit Sub
End If
Call valida_usuario(TextBox1 & ";" & TextBox2)
If intento = True Then
Unload Me 'opcional seguir en el UF2 para permitir un nuevo ingreso de clave
UserForm1.Show
End Sub
Private Sub CommandButton2_Click()
Unload Me
Application.Visible = False: ActiveWorkbook.Close
End Sub
En el ThisWorkbook utilizo esto según el ejemplo que aparece en este página de todoexpertos
Private Sub Workbook_Open()
Application.Visible = False
UserForm2.Show
End Sub
esto lo entiendo
En el Userform esta esto
Option Explicit
Private Sub CommandButton1_Click()
If TextBox1 = "" Then
MsgBox "Escriba su usuario", vbCritical
Exit Sub
End If
If TextBox2 = "" Then
MsgBox "Escriba su contraseña", vbCritical
Exit Sub
End If
Call valida_usuario(TextBox1 & ";" & TextBox2)
UserForm1.Show
Unload Me 'opcional seguir en el UF2 para permitir un nuevo ingreso de clave
End Sub
Private Sub CommandButton2_Click()
Unload Me
Application.Visible = False: ActiveWorkbook.Close
End Sub
Esto tambien lo entiendo
Pues hasta aquí estoy claro el problema se me presenta al momento que el formulario que se carga al comienzo me pide el nombre de usuario y la contraseña es decir no se como colocársela ya que en una parte del código que viene a continuación hay una linea de código que manda abrir un archivo llamado Password.txt y no se como hacer esto te coloque en negrilla lo que entiendo ya que yo quiero que me busque los datos en una tabla que tengo hecha en una hoja de excel, pero si con un archivo txt es más fácil por favor explicame y lo haré graciar de ante mano
Private Sub UserForm_Click()
End Sub
y en el modulo tengo esto:
Option Explicit
Public intento As Boolean
Dim f As Integer
luego el Sub valida_usuario(cadena As Variant) que asi:
Sub valida_usuario(cadena As Variant)
Dim Archivo1 As String
Dim error As Boolean
On Error GoTo err
Open (ActiveWorkbook.Path & "\Password.txt") For Input As #1
Do Until EOF(1)
Line Input #1, Archivo1
If cadena = Archivo1 Then error = True: Exit Do
DoEvents
Loop
If error = False Then
f = (f + 1)
If f = 4 Then Application.Visible = True: ActiveWorkbook.Close
MsgBox "La contraseña no es valida", vbCritical: Application.Visible = False: intento = False
Else
intento = True
Application.Visible = False
Unload UserForm2
End If
Close #1
err: If err.Number = 53 Then MsgBox "No se encuentra La tabla de contraseñas ", vbCritical
End Sub
el form que da asi:
Option Explicit
Private Sub CommandButton1_Click()
If TextBox1 = "" Then
MsgBox "Escriba su usuario", vbCritical
Exit Sub
End If
If TextBox2 = "" Then
MsgBox "Escriba su contraseña", vbCritical
Exit Sub
End If
Call valida_usuario(TextBox1 & ";" & TextBox2)
If intento = True Then
Unload Me 'opcional seguir en el UF2 para permitir un nuevo ingreso de clave
UserForm1.Show
End Sub
Private Sub CommandButton2_Click()
Unload Me
Application.Visible = False: ActiveWorkbook.Close
End Sub
1 Respuesta
Respuesta de edwinhenao
1