Como evitar el copiado de un archivo

Esta es la primera vez que consulto. Espero me puedan ayudar, de todas maneras les agradezco.
El problema es que tengo un archivo Excel que no quiero que sea copiado (o al menos que no pueda ser utilizado en otra máquina). La solución que le encontré es la siguiente: Creé una macro que lee el disco rígido y su nº de serie, entonces yo le copié el nº de serie de mi disco rígido y esta macro los compara al abrirse el archivo. Si el nº que le da como respuesta a su búsqueda es el proveniente de un disco diferente, la macro hace que el libro entero se cierre. Por supuesto que de todas maneras están protegidas por contraseñas todas las hojas y las propiedades del VBA.
PROBLEMA: resulta que si la opción de "seguridad" de "macro" dentro de "herramientas" está configurado como Seguridad "media" o "alta", las macros se deshabilitan y por tanto, se puede abrir mi archivo en cualquier máquina que esté así configurada y entonces se pueden ejecutar algún archivo que desbloquee las contraseñas tanto de Excel como de las propiedades del VBA.
PREGUNTA: *¿Se puede impedir que se deshabiliten las macros de alguna manera? Hay que tener en cuenta que sería en una pc a la que yo no tendría acceso
*o tienen alguna receta mejor? O más efectiva?

3 Respuestas

Respuesta

Les dejo una interesante propuesta para convertir sus trabajos Excel en aplicaciones profesionales, todo preparado para monetizar el desarrollo.
http://eclipsa.com.ar/exceltoapp Hola, les dejo una interesante propuesta para convertir sus trabajos Excel en aplicaciones profesionales, todo preparado para monetizar el desarrollo.
http://eclipsa.com.ar/exceltoapp 

Respuesta
1
Si realmente necesitas que no abran tu archivo no puedes confiar en excel y vba, porque cualquier usuario de nivel medio ha avanzado lo puede abrir, así tengas contraseña por todos lados, excel 2007 mejoró la seguridad pero todavía no es muy confiable. Te recomendaría que buscaras otro tipo de software que escondiera tu archivo para que no se vea. Hay muchos y algunos son versiones freeware
Y si de todas formas quieres que usuarios principantes no vean tu archivo lo que puedes hacer es que para que se vea tu hoja que necesite correr una macro, es decir
Si el usuario tiene desactivado las macro aparezca una hoja diciendo que necesite las macros activadas y tus archivos tengan la propiedad veryhidden. (Ahorita te explico como)
Y si el usuario tiene activado las macros, entonces que al abrir el archivo cheque el número de serie de tu disco duro, etc.
Como cambiar las propiedades de la hoja a veryhidden (obviamente tienes que establecer la contraseña en el ide de vba)
En vba
En cada hoja que quieras esconder, ver en las ventanas de propiedades la propiedad visible y ahí la cambias a 2-xlSheetveryhidden
Espero te sirva y no olvides de cerrar la pregunta
Respuesta
1
Yo lo que hago en casos como el tuyo es el en evento "BeforeClose" (el que se ejecuta antes de cerrar el archivo), dejar visible solo una hoja con los comentarios de derechos de autor, recomendaciones acerca de tener las macros habilitadas, etc y oculto todas las otras hojas con la propiedad xlSheetVeryHidden (que hace que no pueda desocultarlas desde la planilla). De esta forma si NO habilita las macros solo verá la hoja que le dice que tiene que habilitar las macros pues todo el resto no estará disponible.
Espero que te sirva, sino dejame una dirección de mail que te paso un pequeño archivo que tengo de ejemplo
Muchas gracias. Mi mail es [email protected].
Yo tenía un método similar, ya que los resultados solo se veían mediante macros por lo que les estaba obligado habilitar las macros. Te cuento, me compré el programa de DONNEX el XCELL COMPILLER (¿lo conoces?), aún no lo pude utilizar bien porque no le pude encontrar la manera de que vincule con otro archivo, es decir, el archivo transformado a ejecutable (es decir NN.exe en vez de .xls) no copia ni pega de otro archivo excel ni siquiera de otro .exe convertido mediante este programa. Qué va a ser, tampoco es que tengo una empresa de esto, ni soy programador, solo es que se me dieron algunas oportunidades de vender unos trabajos y quería protegerme. Te agradezco la buena voluntad, aunque aún no pude solucionar completamente mi problema. Quizás debería estudiar ingeniería en sistemas jaja. Un abrazo y gracias

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas