Macro para poner un nombre escribiendo un numero

hola nuevamente

Primero aprovecho para agradecer tu valioso apoyo para resolver mis dudas.

la duda que tengo es la siguiente: como hacer para que en un formulario al escribir un numero en un textbox me ponga un nombre en el textbox donde va el nombre, esto para evitar escribir el nombre manualmente.

el nombre se obtendría de una hoja del mismo libro

Ejemplo:

código nombre

1 pablo perez

2 minerva aceves

ejemplo

código (textbox12) escribo 1 y que en el textbox1 que es el del nombre me ponga el resultado en este caso pablo perez

espero haberme podido explicar bien, si necesitas mas información por favor estoy a tus ordenes gracias

nuevamente gracias por tu apoyo

1 Respuesta

Respuesta
1

Pon el siguiente código en tu userform

Private Sub TextBox12_Exit(ByVal Cancel As MSForms.ReturnBoolean)
'por.dam
TextBox1 = ""
If IsNumeric(TextBox12) Then
    Set s = Columns("A").Find(TextBox12)
    If Not s Is Nothing Then
        TextBox1 = Cells(s.Row, "B")
        If TextBox1 = "" Then
            MsgBox "El número no tiene nombre"
            TextBox12.SetFocus
            Cancel = True
        End If
    Else
        MsgBox "El número no existe"
        TextBox12.SetFocus
        Cancel = True
    End If
Else
    MsgBox "Sólo números"
    TextBox12.SetFocus
    Cancel = True
End If
End Sub

Saludos.Dam
Si es lo que necesitas.

Hola nuevamente

ya puse la información que amablemente me dijiste, actualize los rangos pero me sale un error, que no coinciden los tipos y si la pongo tal cual me la mandaste me sale que no existe el numero,pongo la macro. que hago gracias por tu apoyo.

Private Sub TextBox12_Exit(ByVal Cancel As MSForms.ReturnBoolean)
'por.dam
TextBox1 = ""
If IsNumeric(TextBox12) Then
Set s = Columns("'LISTADO DE PUBLICADORES'!A2").Find(TextBox12)
If Not s Is Nothing Then
TextBox1= Cells(s.Row, "'LISTADO DE PUBLICADORES'!B2")
If TextBox1 = "" Then
MsgBox "El número no tiene nombre"
TextBox12.SetFocus
Cancel = True
End If
Else
MsgBox "El número no existe"
TextBox12.SetFocus
Cancel = True
End If
Else
MsgBox "Sólo números"
TextBox12.SetFocus
Cancel = True
End If
End Sub

La macro funciona bien, tienes que poner un número en el textbox y tener números en la columna A, revisa que tengas números y no texto que parecen números

La modificación que hiciste no es correcta.

Te anexo un ejemplo

https://www.dropbox.com/s/5q28e9po2xw0ace/form1.xls

Revisa el ejemplo

Saludos. Dam

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas