Comparar celdas en muchas hojas excel

Cerrado
nachico95
Message postés
1
Date d'inscription
jueves, 5 de julio de 2018
Estatus
Miembro
Última intervención
jueves, 5 de julio de 2018
- 5 jul 2018 a las 17:02
Hola,
Acabo de iniciarme en la programación de VBA. Quiero crear un macro para infinitas hojas pero por alguna razón no me sale correctamente. El objetivo es que el usuario inserte el número del cliente, y posteriormente en la misma hoja se generen automáticamente los datos del cliente. El libro del excel se va a organizar con la primera hoja para el usuario y el resto de hojas clientes. He pensado el siguiente procedimiento:

Paso 1: El usuario inserta el numero de cliente en hoja 1(en este caso celda B3)
Paso 2: Quiero que lea en todas las hojas del excel (que se llamaran 1, 2(por el número de cliente)) y la celda A1(en este caso) tendrá el numero del cliente.
Paso 3: Coger los datos del cliente(Hoja 2 celda A3) y copiarlos en la hoja 1(en este caso celda A4)

Todos los posicionamientos de las celdas se pueden variar.

Pongo el programa que he pensado para dos hojas que funciona, pero no se realizarlo con FOR:

Dim a as integer
Dim i as integer
Sub cliente()
a=0
if Sheets(1).Range("B3")= Sheets(2).Range("A1") then
Sheets(2). Range("A3").Copy Destination:=Sheets(1). Range ("A4")
if Sheets(1).Range("B3")= Sheets(3).Range("A1") then
Sheets(3). Range("A3"). Copy Destination:=Sheets(1). Range ("A4")
end if
end if
end sub

De esta manera funcionaria pero hay muchísimos clientes(por ejemplo 10), entonces he intentado con FOR pero no me sale

Dim a as integer
Dim i as integer
Sub cliente()
a=0
i=2
For i=2 to 11 'La primera hoja no hay que revisarla
if Sheets(1).Range("B3")= Sheets(i). Range("A1") then
a= Sheets(i). Range("A1")
Debug.Print Sheets(1).Range("A4").a
else
i=i+1
end if
next
end sub

Muchas gracias de antemano99</config>