MACRO que me remplace la formula de =

Tengo una hoja1 que en la celda B1 tengo que anotar un numero y ese numero quiero que me se vea reflejado en la hoja2 en la celda c10

Actualmente lo tengo en fórmula utilizando en la hoja2 el sig =

Lo que necesito es que la fórmula sea remplazada por un código en visual

2 Respuestas

Respuesta
1

Si lo que quieres es una línea de código que te haga lo mismo, sería:

Sheets("Hoja2").[C10].Value=Sheets("Hoja1").[B1]

Pon los nombres de tus hojas y listo.

Si te ha valido la respuesta.

¿Ese código lo asigno a una macro? O al dar clic al botón enter en la celda B1 y este me lo refleje en la celda C10 de la hoja2

El segundo punto me ayudaría más..

Gracias marcial

Si, asígnalo a una macro cómo esta:

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "B1" Then Sheets("Hoja2").[C10].Value=Target.value
End Sub

Si pulsas ALT + F11, irás al editor de VBA. En el cuadro de la izquierda haz clic en la hoja1 y pega el código en el cuadro de la derecha.

Respuesta
1

En caso que no quieras que se mantenga la referencia de fórmula, entonces en la Hoja1 (según tu nomenclatura) agrega el siguiente evento

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "B1" Then Sheets("Hoja2").Range("C10").Value = Target.Value
End Sub

NO me funciona...  LO pegue en la hoja1 y le puse a B1 esto: 1234567

y no pasa nada en la hoja2 en la celda c10

aque se quede?

la celda C10 la tengo bloqueada sera por eso?

Si lo pegue en un modulo

Use la macro que me dejaste anteriormente aunque me gustaría mejor que al dar enter me lo arrojara directo..

Pero gracias por tu tiempo en vdd...

saludos...

Si tenés la hoja2 bloqueada, es por eso, modifica la macro como sigue

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "B1" Then 
 Sheets("Hoja2").Unprotect
 Sheets("Hoja2").Range("C10").Value = Target.Value
 Sheets("Hoja2").Protect
End If
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas