[RESUELTO]Copiar celdas hoja visible a hoja oculta,

¿Nuevo en Apache OpenOffice? ¿No sabe cómo comenzar o dónde hacer su pregunta? ¡Este es el lugar!
Reglas del Foro
Los moderadores podrían mover los temas creados aquí a un foro más apropiado.
Si usted publicó aquí y no encuentra el tema, puede buscar sus mensajes haciendo clic en la opción «Buscar sus mensajes» que se encuentra justo debajo de la cabecera de la página, junto al panel de control de usuario y al acceso a sus mensajes privados.

[RESUELTO]Copiar celdas hoja visible a hoja oculta,

Notapor senda678 » Dom Ago 09, 2020 7:55 am

Hola buenos días,

He estado buscando por el foro pero no lo he encontrado.

He visto como copiar celdas a otras hojas, pero no es exactamente lo que necesito.

Os explico un poco.

Voy a crear unas hojas de trabajo, donde mis trabajadores tienen que ir escribiendo los datos que van haciendo, y lo que me gustaría es que todo lo que escriban lo copie a otra hoja oculta. Y ademas si ellos por ejemplo han escrito en la celda B2 o la que sea, y despues lo borran y ponen otra cosa, que se haya copiado lo primero que han escrito y luego lo nuevo, que me copie todo aunque ellos lo borren.

Es para hacerles un control para que no puedan manipular datos.


Muchisimas gracias
Última edición por senda678 el Lun Ago 10, 2020 10:02 am, editado 1 vez en total
Libreoffice Versi??n: 6.4.4.2 (x64)
windows 10
senda678
 
Mensajes: 21
Registrado: Mié Jul 15, 2020 3:57 pm

Re: Copiar celdas hoja visible a hoja oculta,

Notapor senda678 » Dom Ago 09, 2020 3:49 pm

Respecto al comentario de antes, no me importaria que la hoja no estuviese oculta.
Pero lo de que vaya copiando todo lo que van escribiendo si, y aunque ellos lo borren, lo haya copiado ya, y así podría controlar lo qe hacen.

Gracias de nuevo
Libreoffice Versi??n: 6.4.4.2 (x64)
windows 10
senda678
 
Mensajes: 21
Registrado: Mié Jul 15, 2020 3:57 pm

Re: Copiar celdas hoja visible a hoja oculta,

Notapor PepeOooSevilla » Lun Ago 10, 2020 8:18 am

Hola.
En el archivo adjunto va un ejemplo. Tendrás que modificar según tu necesidades.
Este es el código asociado al suceso "Contenido cambiado" de la hoja "DATOS".
La hoja "BITACORA_DATOS" puedes ocultarla si quieres, no afecta a la macro.

Código: Seleccionar todo   Expandir vistaContraer vista
REM *** BASIC ***
Option Explicit

Sub GuardarCambiosCeldas()
' Suceso: Contenido cambiado
   Dim DocCalc As Object
   Dim HojaAuxiliar As Object
   Dim Seleccion As Object
   Dim ContenidoActual As String
   Dim DireccionAbsoluta As String
   Dim FilaLibre As Long
   
   DocCalc = ThisComponent
   Seleccion = DocCalc.getCurrentSelection()
   If Seleccion.getImplementationName() = "ScCellObj" Then
      DireccionAbsoluta = Seleccion.AbsoluteName
      ContenidoActual = Seleccion.getString()
      HojaAuxiliar = DocCalc.getSheets.getByName("BITACORA_DATOS")
      With HojaAuxiliar
         FilaLibre = .getCellRangeByName("B1").getValue()
         'Comenzamos en la Columna A, Fila 4 de la hoja BITACORA_DATOS
         .getCellByPosition(0, 3 + FilaLibre).setString(DireccionAbsoluta)
         .getCellByPosition(1, 3 + FilaLibre).setString(ContenidoActual)
         .getCellByPosition(2, 3 + FilaLibre).setValue(Now())
      End With
   End If
End Sub

Con un filtro automático puedes consultar la celda que te interese y ver las modificaciones que ha sufrido a lo largo del tiempo.
Saludos cordiales.
Adjuntos
COPIAR_MODIFICACIONES_OTRA_HOJA.ods
LibO Calc 6.4.5
(13.23 KiB) 31 veces
LibreOffice 6.4.6. Windows 10. Java 8 rev. 261 (64 bits)
Por favor, utiliza el Foro para tus consultas, no los mensajes privados
Si usas OpenOffice/LibreOffice trabaja y guarda en ODT, ODS, ODP, ... Y haz copias de seguridad.
Avatar de Usuario
PepeOooSevilla
 
Mensajes: 1480
Registrado: Sab Abr 04, 2009 6:10 pm
Ubicación: Sevilla (España)

Re: [RESUELTO]Copiar celdas hoja visible a hoja oculta,

Notapor senda678 » Lun Ago 10, 2020 9:36 am

hola, de verdad que mil gracias, no te imaginas cuanto me has ayudado con esto,

Un abrazo.
Libreoffice Versi??n: 6.4.4.2 (x64)
windows 10
senda678
 
Mensajes: 21
Registrado: Mié Jul 15, 2020 3:57 pm

Re: [RESUELTO]Copiar celdas hoja visible a hoja oculta,

Notapor senda678 » Lun Ago 10, 2020 1:53 pm

Hola de nuevo, lo he estado probando y va muy bien, pero me han surgido varias dudas.
El suceso contenido cambiado yo por lo menos en mi versión no lo tengo, y si copio la macro en mi archivo no me va, y luego con tu hoja, si generas mas hojas tampoco.
Si te parece te paso mi hoja para que puedas ver un poco la idea.
Tengo creadas 14 hojas.
1- Claves
2 - Summary Sheet
3-13 son de cada trabajador
14 es donde queria recoger todos los datos de todo lo que escriban los trabajadores.

Te paso el documento por si le quieres echar un vistazo, ahora mismo solo tengo funcionando la macro de proteger claves con los botones, el resto por ahora no lo tengo activo, porque si no no puedo ir haciendo todas las pruebas.

Mil gracias portu ayuda
Adjuntos
Version definitiva.ods
(31.42 KiB) 35 veces
Libreoffice Versi??n: 6.4.4.2 (x64)
windows 10
senda678
 
Mensajes: 21
Registrado: Mié Jul 15, 2020 3:57 pm

Re: [RESUELTO]Copiar celdas hoja visible a hoja oculta,

Notapor PepeOooSevilla » Mar Ago 11, 2020 7:22 am

Hola.
Vayamos por partes ...
... El suceso contenido cambiado yo por lo menos en mi versión no lo tengo ...

* Pasos a seguir para asignar una macro a un suceso de hoja en LibreOffice:
    1. Pinchar con el botón derecho del ratón sobre la pestaña de la hoja (donde figura su nombre), o bien, en el menú Hoja.
    2. Pinchar en Sucesos de hoja....
    3. Aparece un cuadro de diálogo de nombre Asignar acción.
    4. Seleccionar Contenido cambiado y pinchar en el botón Macro....
    5. Aparece otro cuadro de diálogo de nombre Selector de macros donde seleccionaremos la Biblioteca donde se encuentran nuestras macros y, dentro de ella, el Nombre de la macro que queremos que se ejecute al cambiar el contenido de una celda de esa hoja en concreto.
    6. Para finalizar pincharemos en el botón Aceptar de cada uno de los cuadros de diálogos abiertos.
... si copio la macro en mi archivo no me va ...

Todos los pasos anteriores se deben repetir para cada una de las hojas de las que deseemos asignar esa macro.
... si generas mas hojas tampoco ...

Ídem.

En el archivo adjunto ya está asignada la macro GuardarCambiosCeldas a todas las hojas de nombre "usuarioX".

La celda B1 de la hoja Copia_datos contiene la fórmula:
Código: Seleccionar todo   Expandir vistaContraer vista
=CONTARA($A$4:$A$500000)

Esa celda se usa en la macro para saber en qué fila escribir las modificaciones que se vayan sucediendo. Puedes cambiar el 500000 por 1048576 (número máximo de filas en una hoja Calc, por ahora).

Saludos cordiales.
Adjuntos
Version definitiva_senda678_v2.ods
LibO Calc 6.4.5
(22.76 KiB) 30 veces
LibreOffice 6.4.6. Windows 10. Java 8 rev. 261 (64 bits)
Por favor, utiliza el Foro para tus consultas, no los mensajes privados
Si usas OpenOffice/LibreOffice trabaja y guarda en ODT, ODS, ODP, ... Y haz copias de seguridad.
Avatar de Usuario
PepeOooSevilla
 
Mensajes: 1480
Registrado: Sab Abr 04, 2009 6:10 pm
Ubicación: Sevilla (España)

Re: [RESUELTO]Copiar celdas hoja visible a hoja oculta,

Notapor senda678 » Mar Ago 11, 2020 1:42 pm

Holaaaaa, ahora si que si un millon de gracias.

Un saludo.
Libreoffice Versi??n: 6.4.4.2 (x64)
windows 10
senda678
 
Mensajes: 21
Registrado: Mié Jul 15, 2020 3:57 pm


Volver a Principiantes

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado