Codigo para transponer los datos de una fila en 10 filas

Inicio VBA Codigo para transponer los datos de una fila en 10 filas

Este debate contiene 3 respuestas, tiene 3 mensajes y lo actualizó  witodiversions hace 5 meses a.

Viendo 4 publicaciones - del 1 al 4 (de un total de 4)
  • Autor
    Publicaciones

  • witodiversions
    Participant

    Buenos dias a todos;

    Antes de nada me gustaria agradecer la labor que hacen todos los participantes de este foro, ultimamente vuestra pagina web la leo mas que el periodico, muchisimas muchisimas gracias.

    Previo a exponer mi problema, he leido las reglas del foro y el asunto a “no resolver trabajos” Lo entiendo y lo comparto, aunque no se me ocurre mejor manera de explicar mi duda, que colgando mi trabajo.

    Explico mi duda en el archivo que estoy trabajando;

    Tengo una hoja llamada “prepedido” a la que le llegan filas con datos desde la columna “A” hasta la “CD” y necesito que cada fila pase a la hoja “prepedido 2” y se pegue en la siguiente fila vacia a partir de la fila 2 y se divida en diez partes la primera de al “A” a la “V” la segunda parte es de la columna “W” a la “AC” y se pegue en la siguiente fila en empezando en la columna “P” y asi el resto de informacion, como esto es un poco complicado de explicar, en el archivo tengo un ejemplo de como quedaria (hoja prepedido2). El codigo que tengo se llama macro prepedido2 pero no consigo hacer ni la primera parte (esta macro esta hecha para que vuelque los datos en la hoja 1 en vez de la hoja prepedido para que se vea el ejemplo, soy un principiante en esto y tiene muchas variables para mi.

    Soy consciente que al socilitar esto estoy pidiendo que me resuelvan el codigo por mi, y que esto no es la finalidad de este foro, sinceramente estoy desesperado porque no consigo resolverlo solo, todavia no soy capaz de formar este tipo de codigos, aunque con solo guiarme un poco espero llegar a ser capaz por mi cuenta, y estaria muy agradecido.

    Solo con leer hasta aqui, valoro y agradezco vuestro tiempo,

    Muchas Gracias.

    Puede ser que estes intesado en ayudarme, asi que dejo un link de descarga del archivo.

    https://www.dropbox.com/s/351nwg2c75h8o72/0000%20HOJA%20BASE%202.0.xlsm?dl=0

    Para una mayor comprension, explico que es cada cosa y para que sirve;

    La hoja formulario, es una hoja que es introducen los datos de un articulo.
    La base de datos, almacen los datos de cada articulo en una fila
    La hoja prepedido, coge los datos seleccionados con una “s” en la primera columna de la BD.
    La hoja prepedido 2 , Deberia coger todas las filas de la hoja prepedido y organizar el articulo, una fila por cada tamaño casilla llamada T1,T1,T3,T4….T10
    La hoja pedidobase, recogera todo lo de la hoja prepedido2 .

    Un saludo.


    Admin
    Keymaster

    Hola witodiversions,

    Por favor, pega el código de VBA para que todos podamos ver a lo que se refiere y así poder ayudarle donde tiene el problema

    Muchas gracias!


    chaffardet
    Participant

    Buenas noches:

    Leí su caso, aunque no entiendo muy bien el motivo de su solicitud si logré entender bien, el siguiente código solucionaría su problema, pero solo para estas 3 líneas del ejemplo, si explicara un poco más claro con un For – Next o una mezcla de ellos se resolvería.

    Viendo su código, con el comando Cells(fila,columna), se usan en el caso de las columnas el número 1 para A, 2 para B, 3 para la columna C y así sucesivamente.

    Le adjunto una posible solución:

    Sub PrepedidoAP2()

    ‘ PrepedidoAP2 Macro


    Sheets(“PREPEDIDO”).Select
    Range(“A2:CG2”).Select
    Range(“CG2”).Activate
    Selection.Copy

    Sheets(“PREPEDIDO2”).Select
    Range(“A2”).Select
    ActiveSheet.Paste
    Application.CutCopyMode = False
    Selection.Copy
    Range(“A3:CG11”).Select
    Range(“CG11”).Activate
    ActiveSheet.Paste

    Sheets(“PREPEDIDO”).Select
    Range(“A3:CG3”).Select
    Application.CutCopyMode = False
    Selection.Copy
    Sheets(“PREPEDIDO2”).Select
    Range(“A12”).Select
    ActiveSheet.Paste
    Application.CutCopyMode = False
    Selection.Copy
    Range(“A13:CG21”).Select
    ActiveSheet.Paste

    Sheets(“PREPEDIDO”).Select
    Range(“A4:CG4”).Select
    Application.CutCopyMode = False
    Selection.Copy
    Sheets(“PREPEDIDO2”).Select
    Range(“A22”).Select
    ActiveSheet.Paste
    Application.CutCopyMode = False
    Selection.Copy
    Range(“A23:CG31”).Select
    ActiveSheet.Paste
    Application.CutCopyMode = False
    Range(“A1”).Select
    End Sub


    witodiversions
    Participant

    Hola Compañeros;

    Muchas gracias por vuestra atencion prestada, y en especial a Chaffardet por solucionarme el problema con el codigo. funciona perfectamente.

    Un saludo.

Viendo 4 publicaciones - del 1 al 4 (de un total de 4)

El debate ‘Codigo para transponer los datos de una fila en 10 filas’ está cerrado y no admite más respuestas.