none
Problema con ruta relativa. RRS feed

  • Pregunta

  • Hola, mi problema tiene que ver con la apertura de un archivo EXCEL que está en la misma carpeta del script que ejecuto. El archivo se llama entrada y está en la misma carpeta que mi script, que se llama automat, por lo que para abrirlo utilizo la instrucción 

    $WorkBook = $Excel.Workbooks.Open(".\entrada.xlsx")

    pero me da el siguiente error

    Lo sentimos, no hemos encontrado .\entrada.xlsx. ¿Puede ser que lo haya movido, eliminado o le hayas cambiado el nombre?
    At C:\Users\pepe\Desktop\TreeSize\automat.ps1:6 char:1
    + $WorkBook = $Excel.Workbooks.Open(".\entrada.xlsx")
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        + CategoryInfo          : OperationStopped: (:) [], COMException
        + FullyQualifiedErrorId : System.Runtime.InteropServices.COMException

    No entiendo por que no puedo abrir el EXCEL mediante una ruta relativa. No se si es que dicha instrucción no acepta rutas relativas o es que la escribo mal, pero esto último no creo que sea ya que mediante la instrucción Resolve-Path ejecutada en el directorio donde está el script he comprobado que la ruta relativa está bien. Gracias, un saludo.

    martes, 3 de diciembre de 2019 8:42

Todas las respuestas

  • Hola MathCommander,

    No te encuentra el archivo porque quien ejecuta es "powershell.exe" y no se encuentra en la misma ruta que tu script, de modo que la ruta relativa lo que te ocurre es que no empieza donde tú crees.

    Puedes obtener la ruta de tu ejecución con:

    $myInvocation.MyCommand.Path

    De modo que si lo guardas en una variable, puedes utilizarla para definir esas rutas relativas que intentas utilizar.

    Espero que te sirva.

    Un saludo.

    Diego

    martes, 3 de diciembre de 2019 11:37
  • Solucionado, gracias.
    lunes, 16 de diciembre de 2019 12:12