UniversoExcelForo

Respuesta a consultas.
Fecha de creación: 09.Abril.2012

Fundadores: Wibly,Tyno,Servando,Sakkar,Rosendo2,RMaximo,Railar,Mcoronel,Ioyama,Igtelo,Hugotron,Drochar,Dedos,Alberto,Adolfo


No estás conectado. Conéctate o registrate

Ver el tema anterior Ver el tema siguiente Ir abajo  Mensaje [Página 1 de 1.]

arfilrey


Buenos dias.
Tengo una libro excel para el control de las capacitaciones recibidas por el personal en el que tengo varias hojas, deseo hacer un formulario en el cual, ingreso el numero de identificacion del personal, presiono un boton llamado verificar y este rellena dos textbox uno con el nombre y otro con el departamento
Generalmente en excel lo hago concadenando index y match, pero al intentar hacerlo en vba, simpre me da error, ya lo intente por separado asi:
dim i as long
dim x as long
dim j as long

i = cedula ( cedula es el textbox que yo ingreso manualmente)
x= worksheetfuntion.match(i,worksheet("hoja3").range("A:A))
j=worsheetfuntion.Index(worksheet("hoja3").range("B:B"),x,0)
textbox1 = j

Pero siempre me da error, Les agradezco cualquier sujerencia
Adjunto libro para que lo puedan entender mejor
Archivos
machote control de capacitaciones.xlsm
No tienes los permisos para descargar los archivos.
(34 KB)

jhon1904

avatar
Hola, Arfilrey

primero que todo tienes que ver que esta cometiendo un error en el codigo, es es lo que estas haciendo mal, este es tu codigo:
Código:
 With Application
 x = WorksheetFunction.Match(i, .Range("A1:A" & j), 0)
 End With
                   


la funcion With es muy buena:

Primer error: .range("a1:A"&J)  esta indicando que busque en la hoja activa  y no va encontrar datos lo cual quiere decir que te va ha salir error, para este caso la base de datos esta en la hoja3.

segundo error: la base de datos tiene formato  tipo numero y asi mismo debes de realizar la consulta.

el código debe quedarte asi:


Código:
 With Application
        x = WorksheetFunction.Match(Int(i), Hoja3.Range("A1:A" & j), 0)
 End With
' ene sta linea colocas en nombre en el textbox1         
TextBox1 = Hoja3.Range("B" & x)


saludos,


_________________
Jhon Mayorquin
https://www.facebook.com/groups/1908894496046888/

3RESUELTO RE.concadenar un texto con la .... el 19/04/17, 12:16 pm

arfilrey


Buenos dias.
Te agradezco mucho la ayuda y las observciones, estoy comenzando en este tema de vba en excel y todos la ayuda sera bien recibida.
Con respecto a sus recomendacion de codigo lo coloque exactemente como indicas pero me sale un error que dice literalmente:
  Se ha producido el error ´1004´en tiempo de ejecución:
No se puede obtener la propiedad MATCH de la clase Worksheetfuntion.

Me podrias ayudar por que en realidad no se en que estoy fallando.
Muchas gracias por su tiempo

jhon1904

avatar
espero te sirva

salduos
Archivos
machote control de capacitaciones.xlsm
No tienes los permisos para descargar los archivos.
(23 KB)


_________________
Jhon Mayorquin
https://www.facebook.com/groups/1908894496046888/

arfilrey


Funciono muy bien te lo agradezco mucho.
Voy a analizarlo para futuros proyectos.

arfilrey


Muchas gracias por la ayuda.

Ver el tema anterior Ver el tema siguiente Volver arriba  Mensaje [Página 1 de 1.]

Permisos de este foro:
No puedes responder a temas en este foro.