Cómo validar la ruta actual en Excel vba?

Estoy trabajando con un formulario de vbaExcel y para evitar peso excesivo en el archivo, las imágenes son cargadas desde la ruta que se encuentra en la celda A1 de la Hoja1. (C:\Programa\Imágenes\.... .jpg) pero podría ser que me lleve el programa para mi casa y desde la llave maya lo ejecute solo para adicionar código.

Cuál sería el código que me permita dentro del Módulo1 en la instrucción Sub Auto_Open() compruebe si se encuentra efectivamente en la ruta descrita en la celda A1? Buscando que con un mensaje me indique que no estoy en la ruta seleccionada y que me sugiera la ubicación manual del libro.

Respuesta
2

Prueba si lo siguiente es lo que necesitas:

Sub Auto_Open()
  Dim wbPath As String, a1Path As String
  Dim ruta As String
  '
  wbPath = ThisWorkbook.Path & "\"
  a1Path = Sheets("Hoja1").Range("A1").Value
  If Right(a1Path, 1) <> "\" Then a1Path = a1Path & "\"
  If LCase(wbPath) <> LCase(a1Path) Then
    MsgBox "No estás en la ruta seleccionada"
    With Application.FileDialog(msoFileDialogFolderPicker)
      .Title = "Seleccciona una Carpeta"
      .AllowMultiSelect = False
      If .Show <> -1 Then Exit Sub
      '
      'en la variable ruta tendrás la carpeta seleccionada
      ruta = .SelectedItems(1)
    End With
  End If
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas