Bill tiene un conjunto de varios libros de trabajo que usa con frecuencia como una suite.

Para evitar miradas indiscretas del contenido de estos libros de trabajo, ha establecido una contraseña para cada uno de ellos. Bill usa un libro de trabajo de menú como puerta de entrada a los otros libros de trabajo de la suite. El libro de trabajo contiene hipervínculos a los libros de trabajo individuales, lo que le proporciona un acceso rápido a los libros de trabajo de su suite.

Dado que Excel protege, mediante contraseña, cada libro de trabajo a nivel de archivo, cada vez que Bill hace clic en un hipervínculo, necesita ingresar la contraseña del libro de trabajo al que está intentando acceder. Se pregunta si hay una manera de simplemente ingresar la contraseña una vez (es la misma contraseña para todos los libros de trabajo en su suite) y tener acceso a todos los libros de trabajo sin la necesidad de ingresar repetidamente la contraseña.

La respuesta corta es que esto no se puede hacer ya que Excel trata cada archivo por separado. Cambie a un archivo separado a través de su hipervínculo y Excel una vez más le pedirá la contraseña. Solo hay dos formas posibles de evitar la molestia. La primera es combinar todos los libros de trabajo separados en un solo libro de trabajo. Ésta puede no ser una solución óptima, por varias razones. (Por ejemplo, es posible que deba distribuir libros de trabajo individuales a otros usuarios. Si combina todos los libros de trabajo en uno, eliminará esta capacidad).

La otra solución es usar una macro para manejar el cambio entre libros de trabajo, en lugar de usar hipervínculos. Hay muchas formas de configurar un sistema de macros de este tipo, pero una forma sencilla que imita el método de hipervínculo es crear una nueva hoja de trabajo que actuará como su «puerta de enlace». En las celdas donde habría agregado hipervínculos, coloque la ruta completa y el nombre de archivo de cada libro de trabajo al que desee vincular.

Debería terminar con una lista de especificaciones de archivo para sus libros de trabajo.

Ahora, haga clic derecho en la pestaña de la hoja de esta nueva hoja de trabajo. Excel muestra un menú contextual en el que debe seleccionar Ver código. Esto muestra el Editor de VBA, con el panel de código mostrado para la hoja de trabajo. Ingrese la siguiente macro en el panel de código:

Private Sub Worksheet_BeforeDoubleClick _   (ByVal Target As Excel.Range, Cancel As Boolean)

Dim sPW As String     Dim sFile As String

sPW = "password" 'Change to your password     sFile = Target.Value     If sFile <> "" Then         If Dir(sFile) <> "" Then             Workbooks.Open _               FileName:=sFile, _               password:=sPW             Cancel = True         End If     End If End Sub

Lo único que debe tener que cambiar en el código es la contraseña que desea que se use para los libros de trabajo a los que accede. (El código asume que se usa la misma contraseña para todos los libros de trabajo).

Presione Alt + Q para salir del Editor de VBA y volverá a su hoja de trabajo. Guarde el libro de trabajo y luego haga doble clic en cualquiera de las celdas que contienen la ruta y los nombres de archivo. Lo que hace Excel es luego pasar el control a la macro que toma la ruta y el nombre del archivo y luego abre ese libro.

_Nota: _

Si desea saber cómo usar las macros descritas en esta página (o en cualquier otra página de los sitios ExcelTips), he preparado una página especial que incluye información útil.

link: / excelribbon-ExcelTipsMacros [Haga clic aquí para abrir esa página especial en una nueva pestaña del navegador].

ExcelTips es su fuente de formación rentable en Microsoft Excel.

Este consejo (2886) se aplica a Microsoft Excel 97, 2000, 2002 y 2003. Puede encontrar una versión de este consejo para la interfaz de cinta de Excel (Excel 2007 y posteriores) aquí:

link: / excelribbon-Using_a_Single_Password_for_Multiple_Workbooks [Usando una sola contraseña para múltiples libros de trabajo].