Jump to content
Sign in to follow this  
Leonardo Briceño

ANSWERED Copiar y Pegar ciertas celdas de una Hoja a otra según condición de una celda

Recommended Posts

Hola buenas tardes amigos de Ayuda Excel

Estoy parado en una macro que no he podido resolver a ver si pueden ayudarme. Gracias de antemano por su colaboración.

Les explico.

El archivo tiene varias hojas, Una se llama control enero, control febrero y asi sucesivamente

La macro la voy a ejecutar en cada hoja

Lo que debe hacer la macro es:

1)      copiar la celda A3, que es una formula, de la Hoja CONTROL 1  a la primera fila disponible de la columna A5 de la Hoja Control General.

2)      Copiar la celda j22 de Control 1 (que es una formula), como valor sin negrita a la primera fila disponible de F5 de la Hoja Control general.

3)      Hacer una botón para ejecutar la macro, teniendo en cuenta que solo debe ejecutarse si la celda j25 de la Hoja Control 1 es igual a SI. Por el contrario si es igual a NO, no debe permitir la ejecución de la macro. Pudiera ser advertido al usuario mediante un MSGBOX.

4)      Por último la posición de las celdas J22 y j25 pueden variar de hoja a hoja según la información introducida en cada hoja.

Agradecidos de antemano por la colaboración prestada.

LB

Anexo archivo

CONTROL GENERAL.xlsm

Share this post


Link to post
Share on other sites

Hola, gracias por tu respuesta, Funciona de manera adecuada, Lo único que no tomé en consideración es que después de efectuada la operación, la celda activa debe quedar en la columna D de la fila respectiva, Es decir, si la información enviada a CONTROL GENERAL queda en la fila 5, la celda activa debe quedar en D5 y así sucesivamente. Muchas gracias

Share this post


Link to post
Share on other sites

Sustituye la macro por:

Sub Copiar()
Dim SiNo As Range, Fila As Long
With ActiveSheet
   Set SiNo = .Range("J" & Rows.Count).End(xlUp)
   If SiNo = "SI" Then
      Fila = Hoja1.Range("A" & Rows.Count).End(xlUp).Row + 1
      Hoja1.Range("A" & Fila) = .Range("A3")
      Hoja1.Range("F" & Fila) = SiNo.Offset(-3)
      Hoja1.Select
      Hoja1.Range("D" & Fila).Select
   End If
End With
End Sub

 

Share this post


Link to post
Share on other sites

Hola @Antoni, muchas gracias por la respuesta, funciona bien, pero me di cuenta de algo que tal vez no empleé término correcto. Me estoy dando cuenta que si el valor del MONTO TOTAL reflejado en la columna J varía por modificaciones que se haga en la información. El valor que se copió en la hoja CONTROL GENERAL no se actualiza. Creo que empleé mal el término copiar como valor. Debería actualizarse si CONTROL1 se modifica. Así se mantiene actualizada la información en caso de cambios. Agradecido de antemano y disculpa no haberme expresado bien. 

Gracias

Share this post


Link to post
Share on other sites

Hola @Antoni, si señor tienes razón, Disculpas por el inconveniente, es que  se me presentaron esos escenarios y no los tenía previsto y por eso las consultas adicionales. Tomaré en cuenta tus recomendaciones de manera de evitar lo sucedido.🤝. Muchas gracias por tu colaboración.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

INFORMACIÓN BÁSICA SOBRE PROTECCIÓN DE DATOS

Responsable: Sergio Andrés Celemín

Finalidad: Moderar y responder comentarios de usuarios. Recuerda que la información que facilites es pública, y los datos que incluyas los leerá cualquier visitante de esta web, así como el avatar que poseas.

Legitimación: Consentimiento del interesado.

Destinatarios: Hetzner Online GmbH.

Derechos: Puedes ejercitar en cualquier momento tus derechos de acceso,
rectificación, supresión, oposición y demás derechos legalmente establecidos a
través del email sergio@ayudaexcel.com.

Información adicional: Encontrarás más información en la política de privacidad.

Sign in to follow this  



×
×
  • Create New...

Important Information

Privacy Policy