[RESUELTO] Parar una macro si se vuelve a escribir en celda

Discute sobre la aplicación de hojas de cálculo

[RESUELTO] Parar una macro si se vuelve a escribir en celda

Notapor oolivares » Jue Nov 30, 2017 5:59 pm

Hola expertos.
Estoy terminando de elaborar una macro que borra varias celdas cuando otras especificas son modificadas, la primera vez que se escriben en estas celdas no presenta problemas porque no hay nada escrito en las celdas subsiguientes, pero cuando se llenan todas las celdas y se modifica una de las especificadas para que corra la macro, entonces todo el contenido se borra definitivamente.
Lo que quisiera es que a partir de la segunda oportunidad que se escriban en esas celdas especificas que corren la macro me salga un mensaje para alertarme “Si continúa todo el informe se borrará” “Aceptar” “Cancelar”, si le doy aceptar entonces borra todo, si le doy cancelar que me pida una contraseña para poder parar la macro y editar el contenido de la celda sin que borre nada, y después de llenar dicha celda que se vuelva a activar la macro.
Por favor su ayuda, les copio el código que estoy usando

Option VBASupport 1
Private Sub Worksheet_Change(ByVal Target As Range)
'Al modificar las celdas F3,C6,L6,L8,C8 del informe se borrara todo el informe
If Intersect(Target, Range("F3,C6,L6,L8,C9")) Is Nothing Then
Exit Sub
Else
'Para eliminar contenidos de las celdas de aprobacion..
Worksheets("Informe").Select
ActiveSheet.Range("B16,B17,A20,A25,A28,A31,A34,A37,A40,A45:M50,A55:A58,E55:E58,G55:G58,J55:J58,L55:M58,C65,C67,G65,G67,K67,K69,A69,A75,B77,B78,D75,C77,C78,E75,E77,E78,K77,M77,A81,A84,A87,A90,A93,A96,A101,A104,A107,A110,B112").ClearContents
End If
End Sub

Gracias de antemano
Última edición por fornelasa el Mar Dic 19, 2017 9:24 pm, editado 1 vez en total
Razón: Marcar tema como resuelto correctamente
OpenOffice version 4.1.0 en windows 8
oolivares
 
Mensajes: 45
Registrado: Mar Mar 10, 2015 10:44 pm

Re: Parar una macro si se vuelve a escribir en una celda

Notapor fornelasa » Jue Nov 30, 2017 6:43 pm

Creo que hay partes de tu consulta que no se entienden ..... por ejemplo:
1) Parece que la macro VBA que usas no resuelve lo que deseas hacer ¿o sí?
2) ¿Si F3 ya tiene un dato y las demás celdas están vacías pero nuevamente se escribe un dato en F3 se debería activar la macro?
Saludos, Federico.
lo 6.2.0 | aoo 4.1.6 | win 7/10
¡Un aplauso para todos los que luchan por proteger y promover la Web abierta!
Avatar de Usuario
fornelasa
 
Mensajes: 3246
Registrado: Jue Feb 17, 2011 8:30 pm
Ubicación: Estado de México, México.

Re: Parar una macro si se vuelve a escribir en una celda

Notapor oolivares » Jue Nov 30, 2017 8:19 pm

Gracias Federico,

En realidad lo que quiero que haga la macro aun no lo hace en el codigo que te copié, lo unico que hace es borrar todo lo que esta abajo si se modifican las celdas f3, c6,l6,l8 y c8.
Como dije funciona bien cuando la hoja esta sin información y se comienza a llenar las celdas mencionadas, seguro que la macro correo pero como no hay nada que borrar no se aprecia el efecto de la macro, sin embargo, cuando ya se lleno todo el informe y alguien edita una de las celdas anteriores, la macro corre y borra el contenido de las celdas y por lo tanto deja en blanco el contenido del informe, y es justo cuando ya se tengan llenadas esas celdas y se trate de editar (desde la segunda vez que se ingrese datos a esas celdas) donde quisiera aumentar una alerta a traves de un mensaje que me de a elegir entre borrar el contenido (correr la macro) o cancelar el proceso (parar la macro)' dejando el informe tal como está y sin borrar su contenido.

Debido a que nadie puede modificar lo que escribio en el informe es que se pone esta restriccion y quizas ahi se pueda aumentar un codigo que a traves de la solicitud de una contraseña, me permita editar cualquiera de las 5 celdas descritas arriba sin correr la macro, de tal forma que una sola persona que conozca la clave pueda editarla sin que intervenga el que lleno el informe, por temas de seguridad de informacion.

Nota.- parece que me olvide copiar todo el codigo en esta linea , lo anoto en forma correcta:
ActiveSheet.Range("B16,B17,A20,A25,A28,A31,A34,A37,A40,A45:M50,A55:A58,E55:E58,G55:G58,J55:J58,L55:M58,C65,C67,G65,G67,K67,K69,A69,A75,B77,B78,D75,C77,C78,E75,E77,E78,K77,M77,A81,A84,A87,A90,A93,A96,A101,A104,A107,A110,B112").ClearContents

Espero no haberme extendido demasiado, gracias por tu atencion
OpenOffice version 4.1.0 en windows 8
oolivares
 
Mensajes: 45
Registrado: Mar Mar 10, 2015 10:44 pm

Re: Parar una macro si se vuelve a escribir en una celda

Notapor oolivares » Jue Nov 30, 2017 9:35 pm

hola.

Avancé algo mas en la macro, ahora me sale el mensaje y detiene o ejecuta la macro, aumenté la primera parte del código que copio abajo, pero no me funciona correctamente en lo siguiente:

1. El mensaje me sale cuando escribo en cualquier parte del informe, quisiera que aparezca solamente al editar las celdas F3,C6,L6,L8 y C9.
2. El mensaje me sale cada que edito las celdas mencionadas, incluso cuando empiezo un informe en blanco, porque no hay nada que borrar, quisiera que aparezca el mensaje solo a partir de la segunda edicion de las celdas descritas, u otra opcion para orientar al codigo seria cuando esten llenadas por lo menos las 2 primeras lineas del informe (ejemplo. Celdas B16 y B17).
3. Quisiera que para modificar el informe con autorizacion e introduccion de una contraseña puedan orientarme en la parte que marqué con asteriscos dentro el codigo. Gracias de antemano

Option VBASupport 1
Private Sub Worksheet_Change(ByVal Target As Range)
'Desde aqui es un codigo que lanza un mensaje antes de borrar todo
dim n as integer
do while true
n = msgbox ("Cuidado.... si continuas puedes perder tu informe o modificarlo con autorización. Pulsa en Aceptar para continuar, o en Cancelar para dejar tu informe sin modificación", _
33)
‘JUSTO EN ESTA PARTE QUISIERA AUMENTAR.
‘******* Si se elige "Aceptar" debería mostrar un mensaje que diga "Si deseas modificar el encabezado debes introducir una contraseña" "Aceptar" "Cancelar"
'si es Aceptar pide contraseña y luego detiene la macro de borrar contenido, si es cancelar sale y deja el contenido sin modificaciones
case 2 ' cancelar, salimos de la macro
exit sub
' Ejecuta el comando undo (deshacer)
' Deshace la última acción realizada por el usuario
Dim oDispatch
Dim oFrame
oFrame = ThisComponent.CurrentController.Frame
oDispatch = createUnoService("com.sun.star.frame.DispatchHelper")
oDispatch.executeDispatch(oFrame,".uno:Undo", "", 0, Array())
end select
loop

' Hasta aqui se ejecuta el mensaje de advertencia de borrar o no
'Al modificar las celdas F3,C6,L6,L8,C9 del informe se borrara todo el informe
If Intersect(Target, Range("F3,C6,L6,L8,C9")) Is Nothing Then
Exit Sub
Else
'Para eliminar contenidos de las celdas de aprobacion..
Worksheets("Informe").Select
ActiveSheet.Range("B16,B17,A20,A25,A28,A31,A34,A37,A40,A45:M50 ").ClearContents
End If
End Sub
OpenOffice version 4.1.0 en windows 8
oolivares
 
Mensajes: 45
Registrado: Mar Mar 10, 2015 10:44 pm

Re: Parar una macro si se vuelve a escribir en una celda

Notapor fornelasa » Vie Dic 01, 2017 1:34 am

Lo lamento, creo no se entiende.
u otra opción para orientar al código seria cuando estén llenadas por lo menos las 2 primeras lineas del informe (ejemplo. Celdas B16 y B17).
Mira esta primera aproximación, ojalá la puedas adaptar a tu proyecto completo.
Saludos, Federico.
Adjuntos
evento.ods
Borrar celdas
(9.21 KiB) 69 veces
lo 6.2.0 | aoo 4.1.6 | win 7/10
¡Un aplauso para todos los que luchan por proteger y promover la Web abierta!
Avatar de Usuario
fornelasa
 
Mensajes: 3246
Registrado: Jue Feb 17, 2011 8:30 pm
Ubicación: Estado de México, México.

Re: Parar una macro si se vuelve a escribir en una celda

Notapor oolivares » Vie Dic 01, 2017 3:14 am

Gracias federico, lo probé y me da un error en la tercera fila de codigo:

Celda= Right (event.AbsoluteName, 4)

Por favor tu revision
OpenOffice version 4.1.0 en windows 8
oolivares
 
Mensajes: 45
Registrado: Mar Mar 10, 2015 10:44 pm

Re: Parar una macro si se vuelve a escribir en una celda

Notapor fornelasa » Vie Dic 01, 2017 4:35 am

He vuelto a hacer pruebas en el archivo que envié y no marca error alguno.
Si lo quisistè adaptar a tu archivo real tal vez algo no hicimos correctamente.
Recuerda la macro esta asignada al evento de la hoja (clic derecho en la pestaña correspondiente y después sucesos/eventos de hoja .... etc)
lo 6.2.0 | aoo 4.1.6 | win 7/10
¡Un aplauso para todos los que luchan por proteger y promover la Web abierta!
Avatar de Usuario
fornelasa
 
Mensajes: 3246
Registrado: Jue Feb 17, 2011 8:30 pm
Ubicación: Estado de México, México.

Re: Parar una macro si se vuelve a escribir en una celda

Notapor oolivares » Vie Dic 01, 2017 5:09 am

Me sigue dando error, estoy probando el mismo archivo que me enviaste sin ninguna modificacion, ahi me da el error en tiempo de ejecucion de Basic '91' variable de objeto no establecida, te aclaro que uso la version 4.0.1 en mi PC
OpenOffice version 4.1.0 en windows 8
oolivares
 
Mensajes: 45
Registrado: Mar Mar 10, 2015 10:44 pm

Re: Parar una macro si se vuelve a escribir en una celda

Notapor fornelasa » Vie Dic 01, 2017 6:55 am

No, no da error y està màs o menos basada en tu macro VBA, la macro no la ejecuta el usuario, la macro se activa solita.
por ejemplo anota un valor o texto en la hoja Informe en las celdas B16 y B17
Ahora modifica por ejemplo F3 de la hoja Datos y mira lo que sucede
Saludos.
lo 6.2.0 | aoo 4.1.6 | win 7/10
¡Un aplauso para todos los que luchan por proteger y promover la Web abierta!
Avatar de Usuario
fornelasa
 
Mensajes: 3246
Registrado: Jue Feb 17, 2011 8:30 pm
Ubicación: Estado de México, México.

Re: Parar una macro si se vuelve a escribir en una celda

Notapor oolivares » Sab Dic 02, 2017 3:10 pm

Gracias Federico:


Modifique algo en el archivo pero tambien quedan unas dudas que estan descritas en la hoja Informe para mejor comprension, por favor tu erientacion.


saludos
Adjuntos
evento3.ods
(13.02 KiB) 45 veces
OpenOffice version 4.1.0 en windows 8
oolivares
 
Mensajes: 45
Registrado: Mar Mar 10, 2015 10:44 pm

Re: Parar una macro si se vuelve a escribir en una celda

Notapor oolivares » Lun Dic 04, 2017 12:27 am

Hola Federico:
Antetodo gracias por tu apoyo.


Ya avancé bastante en el documento que estoy elaborando pero no soy tan diestro con esto de las macros, pero entiendo lo suficiente para poder llegar a mi objetivo.


Lo que trato de hacer es un informe que primero me obligue a habilitar macros para que corran las especificaciones de seguridad que debe tener, ademas de cuidar que nadie pueda copiar contenidos de otros informes o simplemente cambiar los encabezados para tener un informe ya elaborado, cada informe debe ser escrito desde cero, lo contrario significará que la seguridad del documento no permita incurrir en estas faltas al proceso

Las partes que Funcionan en el archivo que te adjunto son las siguientes:

Escenario A: las macros no estan habilitadas (la macro no corre)

- Solamente muestra la hoja2 para alertar que las macros no estan habilitadas, no permite ver el informe ya que esta oculta y con contraseña
- Obliga a habilitar macro

Escenario B: La macros estan habilitadas (corre la macro)

Al abrir documento:
- Muestra la hoja informe y oculta la hoja2, el informe esta listo para redactarse
- Asimismo deshabilita las opciones de copiar, pegar, cortar y pegado especial (** aqui debería deshabilitar Opciones de menu herramientas)

Al cerrar o guardar documento:
- Oculta la hoja Informe y muestra la hoja 2, protegiendo el documento con una contraseña
- Vuelve a habilitar las opciones de copiar, pegar, etc... para que se puedan usar en otros documentos que no son el informe

Lo que no está Funcionando bien es lo siguiente:

- cuando se guarda el documento se pasa a la hoja2, deberia quedarse en la hoja informe y seguir escribiendo normalmente o salir
- La macro de borrar el contenido del informe si se modifican los encabezados (celdas color rojo), no me corre, quizas estoy colocando el codigo donde no corresponde.
- En esta parte del borrado necesito operar como te detallé en el archivo adjutno del anterior correo.


Estoy a punto de concluir, pero parece que estoy haciendo algo mal y por eso no estan funcionando bien los codigos.

Por favor una ultima orientación para poder terminar mi trabajo (adjunto el archivo final)

Muchas Gracias.
Adjuntos
Prueba Informe 2.ods
(19.35 KiB) 49 veces
OpenOffice version 4.1.0 en windows 8
oolivares
 
Mensajes: 45
Registrado: Mar Mar 10, 2015 10:44 pm

Re: Parar una macro si se vuelve a escribir en una celda

Notapor fornelasa » Lun Dic 04, 2017 11:41 pm

Ni siquiera sé si he entendido bien .....
Saludos, Federico.
Adjuntos
Prueba Informe 2 (1).ods
AVANCE
(21.32 KiB) 45 veces
lo 6.2.0 | aoo 4.1.6 | win 7/10
¡Un aplauso para todos los que luchan por proteger y promover la Web abierta!
Avatar de Usuario
fornelasa
 
Mensajes: 3246
Registrado: Jue Feb 17, 2011 8:30 pm
Ubicación: Estado de México, México.

Re: Parar una macro si se vuelve a escribir en una celda

Notapor fornelasa » Mar Dic 05, 2017 12:30 am

Otro ejemplo:
Saludos.
Adjuntos
evento3.ods
AVANCE EJEMPLO
(14.19 KiB) 61 veces
lo 6.2.0 | aoo 4.1.6 | win 7/10
¡Un aplauso para todos los que luchan por proteger y promover la Web abierta!
Avatar de Usuario
fornelasa
 
Mensajes: 3246
Registrado: Jue Feb 17, 2011 8:30 pm
Ubicación: Estado de México, México.

Re: Parar una macro si se vuelve a escribir en una celda

Notapor oolivares » Mié Dic 06, 2017 3:01 am

Federico, gracias
En ambos ejemplos que gentilmente enviaste, funcionan bien las macros, lo único que me falta y no puedo avanzar es en que antes de borrar contenido de informe por efecto de cambiar el encabezado, me permita introducir una contraseña para poder editar el encabezado sin borrar contenido.

De tal forma que solo la persona que tenga la contraseña pueda editar el encabezado sin borrar el contenido del informe.

Gracias mil por tu amable atención.
OpenOffice version 4.1.0 en windows 8
oolivares
 
Mensajes: 45
Registrado: Mar Mar 10, 2015 10:44 pm

Re: Parar una macro si se vuelve a escribir en una celda

Notapor oolivares » Mié Dic 06, 2017 3:03 pm

Hola fornelasa.


Ya pude colocar una contraseña para que me permita parar la macro, y funciona bien.


Sin embargo en la macro que desactiva items: "Sub Desactivar_Items", siempre me marca error en la siguiente linea:


Argumentos.insertByName("Command_" & Items(i), Actual)


el problema ocurre con el Arhivo (Prueba Informe 2 %281%29) que me enviaste.


Sucede cada vez que abro el archivo y en ocasiones le doy doble clic y no entra (como que cuelga un momento) y luego pruebo otra vez paa entrar, lo logro pero me sale el error marcando la linea de codigo que te marco.


por favor tus luces.


Gracias
Adjuntos
Prueba Informe 2 %281%29.ods
(21.32 KiB) 43 veces
OpenOffice version 4.1.0 en windows 8
oolivares
 
Mensajes: 45
Registrado: Mar Mar 10, 2015 10:44 pm

Re: Parar una macro si se vuelve a escribir en una celda

Notapor fornelasa » Mié Dic 06, 2017 6:30 pm

A ver sí así si.
Saludos.
Adjuntos
Prueba Informe 2 (1).ods
Avance
(21.32 KiB) 51 veces
lo 6.2.0 | aoo 4.1.6 | win 7/10
¡Un aplauso para todos los que luchan por proteger y promover la Web abierta!
Avatar de Usuario
fornelasa
 
Mensajes: 3246
Registrado: Jue Feb 17, 2011 8:30 pm
Ubicación: Estado de México, México.

Re: Parar una macro si se vuelve a escribir en una celda

Notapor oolivares » Jue Dic 07, 2017 11:44 pm

Gracias Fornelasa.

El ultimo archivo que enviaste funciona perfectamente, de verdad muchas gracias.

Sin querer abusar de tu atención ni la del foro quisiera darle un ajuste al inputbox que solicita la contraseña.
Hay alguna forma de hacer que los caracteres de la contraseña no sean visibles? Por ejemplo que se vean solo asteriscos.

Trate de adecuar algun codigo pero necesariamente se deben crear formularios y es algo que no entiendo bien, sin embargo encontre este codigo que hace lo que quiero sin usar formularios, sera posible adecuar a las macros que ya avance?
Código: Seleccionar todo   Expandir vistaContraer vista
Sub Main
  ' crate dialog
  oDialog = CreateUnoService("com.sun.star.awt.UnoControlDialog")
  oDialogModel = CreateUnoService("com.sun.star.awt.UnoControlDialogModel")
  oDialogModel.setPropertyValues( _
    Array("Height","PositionX","PositionY","Title","Width"), _
    Array(50,30,30,"Input Password",100))
  oDialog.setModel(oDialogModel)
 
  ' editbox for password input
  oEditModel = oDialogModel.createInstance("com.sun.star.awt.UnoControlEditModel")
  oEditModel.setPropertyValues( _
    Array("EchoChar","Height","PositionX","PositionY","Width"), _
    Array(asc("*"),15,5,5,90) )
  oEditModel.EchoChar = asc("*")
  oDialogModel.insertByName("PasswordEdit",oEditModel)
 
  ' ok button and close button
  oOKButton = oDialogModel.createInstance("com.sun.star.awt.UnoControlButtonModel")
  oOKButton.setPropertyValues( _
    Array("DefaultButton","Height","Label","PositionX","PositionY","PushButtonType","Width"), _
    Array(True,15,"~OK",55,25,1,40))
  oDialogModel.insertByName("OkButton",oOKButton)
  oCancelButton = oDialogModel.createInstance("com.sun.star.awt.UnoControlButtonModel")
  oCancelButton.setPropertyValues( _
    Array("Height","Label","PositionX","PositionY","PushButtonType","Width"), _
    Array(15,"~Cancel",5,25,2,40))
  oDialogModel.insertByName("CancelButton",oCancelButton)
 
  ' show dialog
  oDialog.setVisible(True)
  If oDialog.execute() = 1 Then
    ' get inputed password
    msgbox oEditModel.Text
  End If
End Sub


Gracias.
Última edición por mauricio el Jue Dic 07, 2017 11:45 pm, editado 1 vez en total
Razón: Usar etiqueas code
OpenOffice version 4.1.0 en windows 8
oolivares
 
Mensajes: 45
Registrado: Mar Mar 10, 2015 10:44 pm

Re: Parar una macro si se vuelve a escribir en una celda

Notapor oolivares » Dom Dic 10, 2017 3:37 pm

Nuevamente acudo a ustedes.

Con el ultimo archivo enviado por Fornelasa (gracias de verdad) que funciona perfectamente, estoy tratando de proteger con una contraseña las macros, de tal forma que al presionar alt+F11 no se pueda visualizar la contraseña que va escrita en el codigo, para esto voy al organizador de macros y en bibliotecas creo una nueva en la ubicacion del archivo para que me permita clocar una contraseña, pero cuando muevo la hoja 1 me sale el error siguiente:

Se ha producido un error de marco de programacion al ejecutar el comando vnd.sun.satr.script Satandard Hija1. Seleccionar

Y solamente me sale el error cuando muevo el modulo Hoja1 a la nueva biblioteca, las demas andan bien, pero es precisamente en la Hija1 donde se encuentra escrita la contraseña que no debe verlo nadie.

Por favor su ayuda ya que es lo ultimo que falta para concluir este trabajo.

Gracias Federico

Gracias foro.
OpenOffice version 4.1.0 en windows 8
oolivares
 
Mensajes: 45
Registrado: Mar Mar 10, 2015 10:44 pm

Re: Parar una macro si se vuelve a escribir en una celda

Notapor fornelasa » Dom Dic 10, 2017 9:09 pm

Tu ultimo post no se entiende o más bien yo no te entendí, considero que hace falta ver el archivo.
¿porque no copias todas las macros del modulo en cuestión a un modulo de la nueva librería?
Saludos, Federico.
lo 6.2.0 | aoo 4.1.6 | win 7/10
¡Un aplauso para todos los que luchan por proteger y promover la Web abierta!
Avatar de Usuario
fornelasa
 
Mensajes: 3246
Registrado: Jue Feb 17, 2011 8:30 pm
Ubicación: Estado de México, México.

Re: Parar una macro si se vuelve a escribir en una celda

Notapor oolivares » Lun Dic 11, 2017 12:12 am

Hola Federico,
Hice lo que indicas, copié las macros pero me sigue dando ese error específicamente referido al modulo Hoja1.
Te adjunto el archivo con el que estoy haciendo la prueba.

Gracias
Adjuntos
Prueba Informe 2 %281%29.ods
(21.32 KiB) 38 veces
OpenOffice version 4.1.0 en windows 8
oolivares
 
Mensajes: 45
Registrado: Mar Mar 10, 2015 10:44 pm

Re: Parar una macro si se vuelve a escribir en una celda

Notapor fornelasa » Lun Dic 11, 2017 5:48 pm

Tu ultimo post no se entiende o más bien yo no te entendí
Gracias por el archivo pero lamento no poder ayudarte, no entiendo bien tu consulta, tal vez alguien más del foro comprenda que deseas hacer.
Saludos, Federico.
lo 6.2.0 | aoo 4.1.6 | win 7/10
¡Un aplauso para todos los que luchan por proteger y promover la Web abierta!
Avatar de Usuario
fornelasa
 
Mensajes: 3246
Registrado: Jue Feb 17, 2011 8:30 pm
Ubicación: Estado de México, México.

Re: Parar una macro si se vuelve a escribir en una celda

Notapor oolivares » Lun Dic 11, 2017 8:31 pm

Mil disculpas si no fuí claro.

Adjunto el archivo donde moví las macros de la biblioteca por defecto "Standard" a una nueva biblioteca llamada "MiLibreria".

Si se abre este archivo saldrá el error que mencioné.

Gracias y disculpas de nuevo.
Adjuntos
Final(1).ods
(22.83 KiB) 39 veces
OpenOffice version 4.1.0 en windows 8
oolivares
 
Mensajes: 45
Registrado: Mar Mar 10, 2015 10:44 pm

Re: Parar una macro si se vuelve a escribir en una celda

Notapor fornelasa » Mar Dic 12, 2017 6:04 am

Pudiera tal vez ser así:
Adjuntos
Final%281%29.ods
avance
(22.88 KiB) 51 veces
lo 6.2.0 | aoo 4.1.6 | win 7/10
¡Un aplauso para todos los que luchan por proteger y promover la Web abierta!
Avatar de Usuario
fornelasa
 
Mensajes: 3246
Registrado: Jue Feb 17, 2011 8:30 pm
Ubicación: Estado de México, México.

Re: Parar una macro si se vuelve a escribir en una celda

Notapor oolivares » Mar Dic 12, 2017 10:49 am

Gracias Fornelasa funciona correctamente. Podrias orientarme un poco mas en qué me equivoqué ? Trato de aprender de ustedes que son unos expertos para no volver a cometer los mismo errores.

Para hacer y entender hice los cambios en el archivo original siguiendo tu ejemplo. Es decir cambiando los eventos de la hoja, pero no logro que me funcione.

Gracias anticipadas por tu amable explicacion
OpenOffice version 4.1.0 en windows 8
oolivares
 
Mensajes: 45
Registrado: Mar Mar 10, 2015 10:44 pm

Re: Parar una macro si se vuelve a escribir en una celda

Notapor oolivares » Mar Dic 12, 2017 11:49 am

Gracias por la respuesta.

Le puse una contraseña de prueba ( 00000 ) para que no se vean los codigos, pero no me corren las macros. esta ultima ayuda por favor para cerrar el tema. Gracias.
Adjunto el archivo con macros protegidas con la contraseña
Adjuntos
Final1.ods
(26.91 KiB) 39 veces
OpenOffice version 4.1.0 en windows 8
oolivares
 
Mensajes: 45
Registrado: Mar Mar 10, 2015 10:44 pm

Re: Parar una macro si se vuelve a escribir en una celda

Notapor oolivares » Mié Dic 13, 2017 10:58 pm

Por favor su ayuda expertos... es lo ultimo que falta. Gracias de antemano
OpenOffice version 4.1.0 en windows 8
oolivares
 
Mensajes: 45
Registrado: Mar Mar 10, 2015 10:44 pm

Re: Parar una macro si se vuelve a escribir en una celda

Notapor fornelasa » Vie Dic 15, 2017 11:13 pm

Mira este avance de tu archivo.
Tengo duda de que en realidad desees hacer esto:
Código: Seleccionar todo   Expandir vistaContraer vista
If Entrada = "00000" Then
        Exit Sub
        Else
                MsgBox "Acceso Denegado, Usted no está autorizado a modificar el informe", vbExclamation, "CLAVE INCORRECTA"
                MsgBox "Guarde su Informe y Solicite al Enc. de Ag. que viabilice su Correción", vbExclamation, "IMPORTANTE !"
        '-----
        event.setFormula (dato)
        Exit Sub

pero no sé.

Saludos.
Adjuntos
Final1.ods
Avance
(26.95 KiB) 62 veces
lo 6.2.0 | aoo 4.1.6 | win 7/10
¡Un aplauso para todos los que luchan por proteger y promover la Web abierta!
Avatar de Usuario
fornelasa
 
Mensajes: 3246
Registrado: Jue Feb 17, 2011 8:30 pm
Ubicación: Estado de México, México.

[Resuelto] Parar una macro si se vuelve a escribir en una ce

Notapor oolivares » Lun Dic 18, 2017 5:54 pm

Gracias Federico,

Ahora la macro funciona correctamente en todas sus instrucciones, realmente tengo mucho por aprender pero con la orientación que brindas es posible avanzar satisfactoriamente en el trabajo.

Mil gracias de verdad, y con esto doy por Resuelto el tema.

Un abrazo.
OpenOffice version 4.1.0 en windows 8
oolivares
 
Mensajes: 45
Registrado: Mar Mar 10, 2015 10:44 pm

Re: Parar una macro si se vuelve a escribir en una celda

Notapor mauricio » Lun Dic 18, 2017 6:03 pm

Por favor, si consideras que el tema ha sido resuelto, marcalo como tal, mira en: ¿Cómo marcar como RESUELTO un tema?, de esta forma, conseguiremos un Foro más ordenado.

Saludos
______________________________________________
"Todo cuanto no podemos dar nos posee". - André Gide
LibreOffice 6.2 | ArchLinux | Gnome3
No respondo preguntas privadas, por favor, usa el foro
Avatar de Usuario
mauricio
 
Mensajes: 5966
Registrado: Sab Nov 22, 2008 5:36 am
Ubicación: CDMX


Volver a Calc

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 14 invitados