Saltar al contenido

Traspaso de datos de un libro general a otros de distintos según el operario


Recommended Posts

publicado

Muy buenas foro.

Tengo un libro con 2 hojas de operarios internos y externos que se llama "Prueba General". Lo que quiero es traspasar todos los datos de las filas a otra hoja según el operario (TO, GA, OR, JP, MJ, ..) para que cada uno rellene las columnas AN, AO y AP, de su hoja particular y, posteriormente,  se actualice en "Prueba general".

 Las iniciales de los operarios están en la columna D. La hoja "TO" que adjunto está copiada.

Espero haberme explicado bien.

Gracias por adelantado.

TO.7z

prueba general.7z

publicado

@KANKENSIBOL, tal y ccomo lo planteas, necesitarás 2 macros ¿No?. Si se lo mandas para que lo reyenen, ¿Cómo piensas luego trer de nuevo la info a tu libro? ¿Cuando acaben todos? :huh:

publicado

Buenas Haplox.

Correcto. Serían dos macros. La primera que pasara de "prueba General" al del operario (en éste caso "TO") y la segunda, cuando rellenen las columnas AN, Ao y AP, se actualizara en "Prueba General".

publicado
Hace 1 hora, Haplox dijo:

@KANKENSIBOL, tal y ccomo lo planteas, necesitarás 2 macros ¿No?. Si se lo mandas para que lo reyenen, ¿Cómo piensas luego trer de nuevo la info a tu libro? ¿Cuando acaben todos? :huh:

Cada un tendría su libro (serían unos 12) y, al actualizar alguna de las columnas citadas, se actualizara automáticamente "Prueba General".

publicado

@KANKENSIBOL, A ver, a ver porqué ahora me he liado :huh:

¿Quieres decir que CADA LIBRO tendría una macro, que actualizase automáticamente el general según las rellenen? :wacko:

Otra cosa que no vi antes. Por ejemplo JP está repetido, una vez en el pedido1 y otra en el pedido2 ¿Serían 2 libros para JP?

Esto se va complicando...

publicado
Hace 23 minutos , Haplox dijo:

@KANKENSIBOL, A ver, a ver porqué ahora me he liado :huh:

¿Quieres decir que CADA LIBRO tendría una macro, que actualizase automáticamente el general según las rellenen? :wacko:

Otra cosa que no vi antes. Por ejemplo JP está repetido, una vez en el pedido1 y otra en el pedido2 ¿Serían 2 libros para JP?

Esto se va complicando...

@Haplox

Punto1. Correcto. Cada libro una macro y que actualizase.

Punto 2. Todo los pedidos de JP (1, 2, 3 .....), tendrían que pasar al libro de JP a la primera fila libre, pero sólo tendría un libro con todos los pedidos.

 

publicado
Hace 3 horas, KANKENSIBOL dijo:

Punto1. Correcto. Cada libro una macro y que actualizase.

Punto 2. Todo los pedidos de JP (1, 2, 3 .....), tendrían que pasar al libro de JP a la primera fila libre, pero sólo tendría un libro con todos los pedidos.

Pues nada, te dejo una solución SOLO PARA LOS INTERNOS, lo de los externos te toca a ti... ;). El libro tiene una hoja suplementaria (Paso) para ir creando los libros. No la elimines, ocúltala si quieres.

Crea los libros en el mismo directorio que el original, y los libros abren el original desde esa misma ruta. Cada libro tiene el código en los eventos de la hoja, así que se ejecutan automáticamente. Prueba y comenta

 

prueba general.xlsm

publicado
Hace 6 horas, Haplox dijo:

Pues nada, te dejo una solución SOLO PARA LOS INTERNOS, lo de los externos te toca a ti... ;). El libro tiene una hoja suplementaria (Paso) para ir creando los libros. No la elimines, ocúltala si quieres.

Crea los libros en el mismo directorio que el original, y los libros abren el original desde esa misma ruta. Cada libro tiene el código en los eventos de la hoja, así que se ejecutan automáticamente. Prueba y comenta

 

prueba general.xlsm

@Haplox  Encuentro 2 pegas.

Cada vez que introduzco datos en Prueba General y creo libros para actualizar, me pide reemplazar cada uno de los libros. No se puede hacer automático?

El libro Prueba General está abierto casi todo el día. Si se modifica alguno de los internos, dice que está abierto y no se guardarán los cambios.

El resto perfecto.

 

 

publicado
Hace 12 horas, KANKENSIBOL dijo:

Cada vez que introduzco datos en Prueba General y creo libros para actualizar, me pide reemplazar cada uno de los libros. No se puede hacer automático?

Pon al principio de la macro: Application.DiaplayAlerts=Flase

Y al final: Application.DiaplayAlerts=True

Hace 12 horas, KANKENSIBOL dijo:

El libro Prueba General está abierto casi todo el día. Si se modifica alguno de los internos, dice que está abierto y no se guardarán los cambios.

Lógico, perro estas cosas se explican al principio ;). Lo único que puedes hacer, estando en red, es compartir el libro. No es problema de la macro, es que windows funciona así

publicado

@Haplox

 

Hace 3 horas, Haplox dijo:

Pon al principio de la macro: Application.DiaplayAlerts=Flase

Y al final: Application.DiaplayAlerts=True

Lógico, perro estas cosas se explican al principio ;). Lo único que puedes hacer, estando en red, es compartir el libro. No es problema de la macro, es que windows funciona así

El libro no está en red. Quería subirlo a la nube para que cada uno, que está en ciudades distintas, pudieran modificarlo.

Me da error 438. Creo que no lo estoy insertando en el lugar correcto. Como verás, no tengo ni idea de macros, :(

'--> Macro por Haplo - 09/11/2018 <-- '
Sub pasar_datos()
Dim inte As New Collection, exte As New Collection
Dim uFo&, uFd&
Dim item

Application.DiaplayAlerts = False
Application.ScreenUpdating = False

'SOLO PARA INTERNOS
i = 3
Do While Cells(i, "D") <> ""
    On Error Resume Next
    inte.Add Cells(i, "D"), CStr(Cells(i, "D"))
i = i + 2
Loop

For Each item In inte

j = 3
Do While Cells(j, "D") <> ""
If Cells(j, "D") = item Then
    uFd = Sheets("Paso").Range("A" & Rows.Count).End(xlUp).Row + 1
    Range(Cells(j, "A"), Cells(j, "AP")).Select
    Selection.Copy
    Sheets("Paso").Activate
    Cells(uFd + 1, 1).PasteSpecial (xlPasteAll)
    Sheets("INTERNOS").Activate
End If
j = j + 2
Loop

uFd = Sheets("Paso").Range("A" & Rows.Count).End(xlUp).Row + 1

Sheets("Paso").Copy

ActiveWorkbook.SaveAs ThisWorkbook.Path & "\" & "interno_" & item & ".xlsm", 52
ActiveWorkbook.Close 'savechanges:=True, Filename:=ThisWorkbook.Path & "\" & "interno_" & item & ".xlsm"
Sheets("Paso").Range("A3:AP" & uFd).ClearContents
Next item

Application.DiaplayAlerts = True

End Sub
 

publicado
Hace 39 minutos , KANKENSIBOL dijo:

Application.DiaplayAlerts = False

Un error mío al teclear :wacko:. Es:
 

Application.DisplayAlerts = False

Application.DisplayAlerts = True

 

publicado

@Haplox

El libro no está en red. Quería subirlo a la nube para que cada uno, que está en ciudades distintas, pudieran modificarlo.

El resto ahora va perfecto.

Muchísimas gracias por tu tiempo. 

publicado

@Haplox

Buenos días de nuevo.

He probado los libros y van bien con con 30 filas (que me sirven para 15 pedidos). El problema le tengo cuando he añadido filas,  que tengo que utilizar una 3000 al año, tanto en Internos como en Externos, más las hojas de paso , y entonces no me genera los libros por operario.

Subo el libro normal, con 30 filas y sin la hoja de "paso_2" utilizada para externos, ya que el de 3000 filas pesa 2,72 Mb.

Habría alguna otra forma de hacerlo??

prueba general.7z

publicado
En 16/11/2018 at 7:40 , KANKENSIBOL dijo:

He probado los libros y van bien con con 30 filas

No tiene sentido :huh:. No hay nada en las macros que limite el número de filas. Revisa si hay algún hueco entre filas, porque entonces sí se pararía la macro

publicado
Hace 6 horas, Haplox dijo:

No tiene sentido :huh:. No hay nada en las macros que limite el número de filas. Revisa si hay algún hueco entre filas, porque entonces sí se pararía la macro

@Haplox

Había revisado 2 veces todas las hojas y no vi nada. Lo he vuelto a revisar y se me había quedado una fila vacía en la hoja de paso .

Solucionado.

Muchas gracias otra vez.

Mil saludos y tema cerrado.

  • Silvia bloqueó este tema

Archivado

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

×
×
  • 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.