Recuperar el valor de una celda

Resuelto
nihadlahit -  
NLAH Mensajes publicados 135 Estado Miembro -
Bonjour,
soy principiante en VBA, me gustaría crear una macro que realice las siguientes funcionalidades:

1- Pedir al usuario que ingrese un valor
2- Buscar este valor en la hoja 3, en el rango ---> B2:B100
3- Recuperar posteriormente la fila de esta celda en una variable llamada "lig", luego guardar el valor de la celda Cells("lig", "$C") en una variable "val"
4- Volver a la hoja 1 y copiar el rango ---> A1:D3, luego pegarlo en el rango ---> A1:D3 de la hoja 2
5- Ahora buscar el valor ingresado en la fila 1 de la hoja 2
6- Recuperar la columna de esta celda en una variable "col"
7- Seleccionar la celda (fila n° 3 de la hoja 2, columna "col") y luego almacenar en esta celda la variable "val"

He intentado el siguiente código, pero siempre me da errores al compilar:

Dim x As Integer, celfind As Range, lig As Integer, col As Integer, m As Range
With Worksheets("Feuil3").Range("B2:B100")
x = InputBox("ingresar el número de la orden")
Set celfind = .Find(x)
lig = celfind.Row
With Worksheets("feuil1").Range("A1:D3")
Selection.Copy
Worksheets("feuil2").Range("A1:D3").Select
ActiveSheet.Paste
End With
Set m = Worksheets("feuil2").Rows("1").Find(celfind)
col = m.Column
Worksheets("feuil2").Range("3" & col).Value = Worksheets("feuil3").Cells(lig, 3).Value
End With

Por favor, ayúdame si puedes,

Gracias

1 respuesta

gbinforme Mensajes publicados 14930 Fecha de registro   Estado Colaborador Última intervención   4 744
 
Hola,

Cuando pongas código usa los códigos porque es más legible.
Tu macro corregida:
Dim x As Variant, celfind As Range, lig As Integer, col As Integer, m As Range With Worksheets("Feuil3").Range("B1:B100") x = InputBox("ingresa el número del pedido") Set celfind = .Find(x) lig = celfind.Row With Worksheets("feuil1").Range("A1:D3") .Copy Destination:=Worksheets("feuil2").Range("A1") End With Set m = Worksheets("feuil2").Rows("1").Find(celfind) col = m.Column Worksheets("feuil2").Cells(3, col).Value = Worksheets("feuil3").Cells(lig, 3).Value End With 


--
Siempre zen
La perfección se alcanza, no cuando no queda nada por agregar, sino cuando no queda nada por quitar. Antoine de Saint-Exupéry
2
NLAH Mensajes publicados 135 Estado Miembro 2
 
De acuerdo.
Muchas gracias infinitas

Funciona muy bien.
0