Uso de Vlookup en Textbox de Userform.

07/07/2006 - 11:09 por mk | Informe spam
Aquí estoy otra vez dando la paliza...

Estoy con un Userform que entre otros tiene dos Textbox (TxtReferencia,
TxtArticulo) y lo que quiero conseguir es que al introducir la
referencia de un artículo en uno de ellos automaticamente aparezca el
nombre en el otro.

Tengo una hoja en el libro donde he puesto una matriz con todas las
referencias y nombres de los artículos ("Matriz").

El código que estoy utilizando es el siguiente:

Private Sub TxtReferencia_Exit(ByVal Cancel As MSForms.ReturnBoolean)
On Error GoTo EH
TxtArticulo.Value = Application.VLookup(TxtReferencia.Value,
Sheets("Matriz").Range("E2:F2000"), 2, 0)
Exit Sub
EH:
If TxtReferencia.Value = "" Then
TxtArticulo.Value = ""
Exit Sub
Else
TxtArticulo.Value = ""
MsgBox TxtReferencia.Value & " Referencia no encontrada"
End If
End Sub

Cuando cargo el formulario e introduzco el valor de la referencia
siempre me aparece el MsgBox, ¿alguna idea?.

Muchísimas gracias desde ya!.

Mk.
 

Leer las respuestas

#1 KL
07/07/2006 - 20:23 | Informe spam
Hola mk,

A ver esto:

Private Sub TxtReferencia_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TxtReferencia = "" Then
TxtArticulo = "": Exit Sub
End If
On Error GoTo EH
TxtArticulo = Application.VLookup(TxtReferencia,
Sheets("Matriz").Range("E2:F2000"), 2, 0)
Exit Sub
EH:
MsgBox TxtReferencia & " Referencia no encontrada"
TxtArticulo = "": TxtReferencia = "": Cancel = True
End Sub


Saludos,
KL



"mk" wrote in message
news:
Aquí estoy otra vez dando la paliza...

Estoy con un Userform que entre otros tiene dos Textbox (TxtReferencia,
TxtArticulo) y lo que quiero conseguir es que al introducir la referencia
de un artículo en uno de ellos automaticamente aparezca el nombre en el
otro.

Tengo una hoja en el libro donde he puesto una matriz con todas las
referencias y nombres de los artículos ("Matriz").

El código que estoy utilizando es el siguiente:

Private Sub TxtReferencia_Exit(ByVal Cancel As MSForms.ReturnBoolean)
On Error GoTo EH
TxtArticulo.Value = Application.VLookup(TxtReferencia.Value,
Sheets("Matriz").Range("E2:F2000"), 2, 0)
Exit Sub
EH:
If TxtReferencia.Value = "" Then
TxtArticulo.Value = ""
Exit Sub
Else
TxtArticulo.Value = ""
MsgBox TxtReferencia.Value & " Referencia no encontrada"
End If
End Sub

Cuando cargo el formulario e introduzco el valor de la referencia siempre
me aparece el MsgBox, ¿alguna idea?.

Muchísimas gracias desde ya!.

Mk.

Preguntas similares