Saltar al contenido

Macro copiar pegar ??


Recommended Posts

publicado

Hola buenas, Feliz año nuevo !!!

Copiar B4:E4 las celdas contienen fórmulas, pegar este rango tal cual con sus fórmulas cada 11 filas y que finalice como ejemplo en la fila 5.000 .

Saludos..

 

publicado

Saludos, en base a lo explicado y sin libro de ejemplo considero participar con la siguiente propuesta:

Sub CopiarPegarFormulas()
    Dim i As Long
    Dim contador As Long
    contador = 0
    Application.ScreenUpdating = False
    For i = 4 To 5000 Step 11
        Range("B4:E4").Copy
        Cells(i, 2).PasteSpecial Paste:=xlPasteFormulas
        contador = contador + 1
    Next i
    Application.CutCopyMode = False
    Application.ScreenUpdating = True
    MsgBox "Ayuda Excel, se han copiado " & contador & " formulas"
End Sub

Esa macro copia las fórmulas que están en B4:E4 cada 11 filas, lo que debería realizar lo expuesto por el consultante llegando a la 5,000. Indudablemente puede quedar más optimizado pero bueno, agregue que no "brinque" la pantalla y un contador con un mensaje que indique cuantas fórmulas pego.

Saludines

publicado

Un código más corto:

Sub CopiarPegarFormulas()
    Dim i As Long
    For i = 4 To 5000 Step 11
        Range("B4:E4").Copy Destination:=Cells(i, 2)
    Next i
End Sub

Con eso concluyo mi participación.

publicado
hace 2 horas, Israel Cassales dijo:

Un código más corto:

Sub CopiarPegarFormulas()
    Dim i As Long
    For i = 4 To 5000 Step 11
        Range("B4:E4").Copy Destination:=Cells(i, 2)
    Next i
End Sub

Con eso concluyo mi participación.

Hola buenas.

La macro es tal cual he pedido.

Pero cuando la llevo a la práctica no me da el resultado de copiar cada 11 filas, son tantos los datos en A 5300 que no los puedes ver todos y no cuadra siempre la copia cada 11 Filas.

Por lo que veo ahora que para conseguir lo que quiero y no fallar de copiar B4:E4 es con el criterio  de LUIS JUEVES en A.

O sea donde este en A LUIS JUEVES copiar  B4:E4.

Subo libro, no me deja subir el libro y pesa 5,45 MB ???

Saludos….

publicado
Sub CopiarPegarFormulas()
    Dim i As Long
    For i = 4 To 5000
        If Cells(i, 1).Value = "LUIS JUEVES" Then
            Range("B4:E4").Copy Destination:=Cells(i, 2)
        End If
    Next i
End Sub

Esa macro recorre todas las filas desde la 4 hasta la 5000 y, si encuentra “LUIS JUEVES” en la columna A (celda A4, A5, etc.), copia el rango B4:E4 a la fila correspondiente.

Aquí, Cells(i, 1) se refiere a la celda en la fila i y la columna 1 (que es la columna A). Entonces, si el valor en esa celda es “LUIS JUEVES”, la condición se cumple y se ejecuta el código dentro del If, que copia el rango B4:E4 a la fila correspondiente.

publicado
hace 1 minuto , eugeniocol dijo:

nada no me deja ni en Binario y pasado a rar, puf......

En realidad no debería ser tan complicado, lo pesado debe ser por los datos. Yo recomendaría hacer una copia y eliminar todos los datos excepto algunos para ejemplo. Sin formatos, sin hojas que no aportan o condicionan el resultado. Por otro lado la macro anterior debe cumplir con lo que cambiaste.

Saludines.

publicado
hace 25 minutos , Israel Cassales dijo:
Sub CopiarPegarFormulas()
    Dim i As Long
    For i = 4 To 5000
        If Cells(i, 1).Value = "LUIS JUEVES" Then
            Range("B4:E4").Copy Destination:=Cells(i, 2)
        End If
    Next i
End Sub

Esa macro recorre todas las filas desde la 4 hasta la 5000 y, si encuentra “LUIS JUEVES” en la columna A (celda A4, A5, etc.), copia el rango B4:E4 a la fila correspondiente.

Aquí, Cells(i, 1) se refiere a la celda en la fila i y la columna 1 (que es la columna A). Entonces, si el valor en esa celda es “LUIS JUEVES”, la condición se cumple y se ejecuta el código dentro del If, que copia el rango B4:E4 a la fila correspondiente.

Por fin todo ok, salvo algo que no viera en un principio.

Gracias.

saludos...

Archivado

Este tema está ahora archivado y está cerrado a más respuestas.

  • 109 ¿Te parecen útiles los tips de las funciones? (ver tema completo)

    1. 1. ¿Te parecen útiles los tips de las funciones?


      • No
      • Ni me he fijado en ellos

  • Ayúdanos a mejorar la comunidad

    • Donaciones recibidas este mes: 0.00 EUR
      Objetivo: 130.00 EUR
  • Archivos

  • Estadísticas de descargas

    • Archivos
      187
    • Comentarios
      97
    • Revisiones
      28

    Más información sobre "Un juego del Rabino en Excel"
    Última descarga
    Por pegones1

    1    1

  • Crear macros Excel

  • Mensajes

    • Hola La opción brindada por @torquemada es correcta, funciona, pero hay algunos inconvenientes que (desde mi punto de vista) no la convierten en mi primera elección. Los inconvenientes son: Tendrías que ir columna por columna haciendo los reemplazos, claro que no se harían a mano sino que utilizarías la opción reemplazar o la opción texto en columnas, aun asi demorará un poquito y será trabajoso. Cada vez que descargues otro listado, tendrás que volver a realizar los reemplazos. Me parece una mejor propuesta lo siguiente: Descarga los movimientos a un archivo de Excel Desde tu control de pagos (otro archivo) cargas los movimientos del archivo descargado mediante Power Query Power Query hará los reemplazos y reconocerá todo correctamente (sin que tengas que hacer nada especial) Cuando descargues los movimientos un día posterior, solamente tendrás que hacer clic en "Actualizar" y todo funcionará en automático
    • Hola a todos, Efectivamente, me temo que tal como trabajan las funciones =HOY() y/o =AHORA() (volátiles), sólo con macros puedes obtener soluciones. Un recurso pedestre podría ser, cada vez que quieras que se fije un dato, te sitúes en esa celda y pulses F2, F9 e INTRO.  Pero claro, puede ser un inconveniente si hay que hacerlo repetitivamente en muchas ocasiones,.............. en fin, lo comento sólo como posibilidad. Saludos,
    • Hola nuevamente, mi duda sigue siendo la ruta, o rutas, finales que quedan, esas que llamas "relativas"; igual por si acaso pon 3 o 4 de esas, tal cual son y/o se ven en el explorador de cada PC y, de ser posible, en cualquier otro "lado" en que las veas.
    • Hola, tal cual se plantea, solamente con macros (VBA); en todo caso, hacerlo a mano o con "CTRL + ;". Saludos.
    • Mil gracias, en verdad todo apoyo es super agradecido,   Su aporte y comentarios valen mucho para in servidor, y tiene razon esperare a conocer si alguien comparte alguna otra manera,   Gracias!!! (y)
  • Visualizado recientemente

    • No hay usuarios registrado para ver esta página.
×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.