Default location while open an Excel file

J

Johnny

Hi,
As you know, I can use this to open an Excel file:
"""
import win32com.client

doc = win32com.client.Dispatch("Excel.Application")
doc.Workbooks.Open(excelFile, ReadOnly=True)
"""

But the problem is when I only pass the filename to the Open()
method, and of course the file is in the current directory, it will
throw an exception that the specified file can't be found. When I use
os.path.abspath(excelFile) instead, it works. But I do know that
somebody can only pass a filename, and no exception is raised. Now I
wonder is that because the "somebody" happen to put the file on the
default location of the Open() method? If so, does any one know the
default location?

Thanks for your consideration.

Regards,
Johnny
 
G

Gabriel Genellina

doc.Workbooks.Open(excelFile, ReadOnly=True)

But the problem is when I only pass the filename to the Open()
method, and of course the file is in the current directory, it will
throw an exception that the specified file can't be found. When I use
os.path.abspath(excelFile) instead, it works. But I do know that
somebody can only pass a filename, and no exception is raised. Now I
wonder is that because the "somebody" happen to put the file on the
default location of the Open() method? If so, does any one know the
default location?

Why don't you want to use an absolute path? It's safe, will always
work... What if Excel, for whatever reason, decides to start the Open
dialog pointing to another location? What if your script does not
have permission to write on such location?


--
Gabriel Genellina
Softlab SRL

__________________________________________________
Correo Yahoo!
Espacio para todos tus mensajes, antivirus y antispam ¡gratis!
¡Abrí tu cuenta ya! - http://correo.yahoo.com.ar
 
J

Johnny

work... What if Excel, for whatever reason, decides to start the Open
dialog pointing to another location? What if your script does not
have permission to write on such location?

Yes, I agree and willing to use abstract path. I only wonder what's
happending inside this method so that I can get more understanding of
the problem caused by passing an relative path in. :)

Regards,
Johnny
 
J

J. Clifford Dyer

Try this:
'C:\\Python24'

I ran it from the interpreter. Dunno what it does from a script in an
arbitrary location. YMMV.

Cheers,
Cliff
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,755
Messages
2,569,536
Members
45,020
Latest member
GenesisGai

Latest Threads

Top