Código para abrir archivos con Unidad de RED

Tengo estas dos dudas:
La primera es que tengo un problema al momento de buscar el archivo deseado, resulta que estoy trabajando los mismos archivos de Excel en 2 equipos y tengo varios archivos de Excel pero quisiera centrarme en uno solo (Honorarios.xls") porque creo que si resuelve el problema en éste el resto me imagino que será igual; estos archivos de Excel están conectados por medio de una UNIDAD DE RED cuando presiono el commandbuton éste busca en mi Unidad que es C:\ y encuentra el archivo sin problema de acuerdo a la dirección que le escriba; Pero cuando mi compañera presiona en el commandbuton le dice que ERROR porque no encuentra la dirección ya que la de ella se encuentra en Z:\; a continuación escribo el código que estoy utilizando y las direcciones que se encuentra tanto en mi equipo que lo llamare “Equipo No.01” y el de mi compañera que es “Equipo No.02”:
Private Sub CommandButton16_Click()
'Honorarios
Workbooks.Open "Z:\ARCHIVOS NUEVOS 2012\Libros Registros Presupuestales Gastos\2012\Gastos de Personal\Servicios Personales Indirectos\Honorarios.xls"
End
End Sub
'Equipo No.01: Workbooks.Open "C:\UNIDAD DE RED PPTO\ARCHIVOS NUEVOS 2012\Libros Registros Presupuestales Gastos\2012\Gastos de Personal\Servicios Personales Indirectos\Honorarios.xls"
'Equipo No.02: Workbooks.Open "Z:\ARCHIVOS NUEVOS 2012\Libros Registros Presupuestales Gastos\2012\Gastos de Personal\Servicios Personales Indirectos\Honorarios.xls"
La segunda duda es condescendiente a la primera ya que quisiera que cuando yo tenga un archivo de Excel por ejemplo (“Honorarios.xls") abierto y mi compañera quiera abrir éste mismo ella, al momento de abrir le de la opción de preguntar que “El archivo se encuentra en Modo de Lectura” o viceversa ya que ella puede tenerlo abierto en algún momento.

Respuesta
1

Tu situación se soluciona reemplazando la letra de unidad por la dirección de la misma, es decir en vez de usar C:\UNIDAD DE RED PPTO\ ó Z:\ debes usar la dirección de la unidad (similar a la IP de tu equipo)

Entonces suponiendo que la dirección de la unidad de red sea 123.456.789.11 la línea correspondiente en tu código quedaría del siguiente modo:

Workbooks. Open ("\\123.456.789.11\ARCHIVOS NUEVOS 2012\Libros Registros Presupuestales Gastos\2012\Gastos de Personal\Servicios Personales Indirectos\Honorarios.xls") 

De este modo puedes abrirlo desde cualquier equipo que tenga acceso a la unidad (lo he probado y funciona) y te evitas las ambigüedades en los nombres (letras) que cada usuario le asigna a la unidad de red.

En cuanto a la apertura en modo de lectura, se ejecuta de manera automática (también lo he probado y funciona). Intentalo y me cuentas como te va.

No sigue generándome error de que no encuentra la ruta. tengo una IP fija.

Busca la IP que identifica la unidad de red y reemplaza en la ruta. A mi me funcionó sin problema.

No resulta le coloco mi IP fija pero me sigue diciendo que error de ruta.

No es la IP de tu equipo, es la IP que identifica la unidad de red... ahora que si 'la unidad de red' es una carpeta en tu equipo, y tu numero de IP es 123.456.789.11, la dirección seria

\\123.456.789.11\UNIDAD DE RED PPTO\ARCHIVOS NUEVOS 2012\Libros Registros Presupuestales Gastos\2012\Gastos de Personal\Servicios Personales Indirectos\Honorarios.xls

Lo que debes intentar lograr es garantizar el acceso a tu equipo, por medio de la IP, y luego copiar el resto de la ruta del libro. (Sospecho que el problema esta en que la dirección de ubicación del archivo tiene alguna ambigüedad)...

acabo precisamente de cacharrear un poco y si... con esa nueva linea de código perfectamente entro Yo... osea el equipo donde se encuentra la carpeta de la Unidad de RED pero luego entro al otro equipo y aya si me dice que no encuentra la dirección.

Pareciera entonces que tu archivo no esta en red, para eso debes ubicarlo en tu carpeta compartida, verificar desde el computador de tu compañera que puede acceder al archivo (de forma manual) y probar nuevamente, aunque esto ya hace parte de un proceso de archivos en red. Pruébalo y me cuentas.

tengo una sugerencia pero no se como hacerla y no se si sea posible

el código que el cual solo me abre a mi que es Workbooks.Open ("\\128.164.0.280\\UNIDAD DE RED PPTO\ARCHIVOS NUEVOS 2012\Libros Registros P........(lo que sigue)................ ¿sera que existe algún condicional o colocar algo para que diga que si no lo encuentra en esta dirección buscarlos en Z:\?

Bien pensado!... eso debería poder lograrse con este código, funciona ejecutando una opción alterna cuando encuentra un error (en este caso, seria cuando no encuentre la ruta 1)

Private Sub CommandButton16_Click()
'Honorarios
On Error GoTo opcion2
Workbooks.Open ("C:\UNIDAD DE RED PPTO\ARCHIVOS NUEVOS 2012\Libros Registros Presupuestales Gastos\2012\Gastos de Personal\Servicios Personales Indirectos\Honorarios.xls")
Exit Sub
opcion2:
Workbooks.Open ("Z:\ARCHIVOS NUEVOS 2012\Libros Registros Presupuestales Gastos\2012\Gastos de Personal\Servicios Personales Indirectos\Honorarios.xls")
End Sub

Pruébalo y me cuentas.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas