ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Discussion (Misc queries) (https://www.excelbanter.com/excel-discussion-misc-queries/)
-   -   Generic file path Excel Macro Question (https://www.excelbanter.com/excel-discussion-misc-queries/218083-generic-file-path-excel-macro-question.html)

dwake

Generic file path Excel Macro Question
 
I have a vba code that opens a file placed on my desktop, but this vba code
must be used in several pc's, and in every pc the desktop path is different
due to different user names.

I would like to now if it's possible to write a "generic" path for the vba
to find the files with no matter which of the pc desktops the macro is being
ran at. The files will be placed always in the desktop folder.

here is the string I am using to open the file.
Workbooks.Open "C:\Documents and Settings\[Username]\Desktop\Data_Export.xls"

Any advice would be appreciated


Sheeloo[_3_]

Generic file path Excel Macro Question
 
ThisWorkBook.Path will give you the path of the file containing the macro.

You can use that to get the path if you place it on the Desktop.

"dwake" wrote:

I have a vba code that opens a file placed on my desktop, but this vba code
must be used in several pc's, and in every pc the desktop path is different
due to different user names.

I would like to now if it's possible to write a "generic" path for the vba
to find the files with no matter which of the pc desktops the macro is being
ran at. The files will be placed always in the desktop folder.

here is the string I am using to open the file.
Workbooks.Open "C:\Documents and Settings\[Username]\Desktop\Data_Export.xls"

Any advice would be appreciated


Mike H

Generic file path Excel Macro Question
 
Hi,

Try this

Sub GetDesktop()
Dim desktop As String
Set objWSHShell = CreateObject("WScript.Shell")
desktop = objWSHShell.SpecialFolders("Desktop")
Workbooks.Open desktop & "\" & "Data_Export.xls"
End Sub

Mike
"dwake" wrote:

I have a vba code that opens a file placed on my desktop, but this vba code
must be used in several pc's, and in every pc the desktop path is different
due to different user names.

I would like to now if it's possible to write a "generic" path for the vba
to find the files with no matter which of the pc desktops the macro is being
ran at. The files will be placed always in the desktop folder.

here is the string I am using to open the file.
Workbooks.Open "C:\Documents and Settings\[Username]\Desktop\Data_Export.xls"

Any advice would be appreciated


dwake

Generic file path Excel Macro Question
 
Maybe I wasn't specific enough. The macro is going out to the desktop and
opening an excel file(no macro in this excel file), copying a specific sheet,
pasting into the excel file where the macro is being ran, and closing the
desktop file.

My problem is this macro is being ran on different pc's, and instead
renaming the file path in the macro for each individual pc, i was wondering
if there was a generic word or phrase you can use for the username portion of
the file path going to the desktop.

"Sheeloo" wrote:

ThisWorkBook.Path will give you the path of the file containing the macro.

You can use that to get the path if you place it on the Desktop.

"dwake" wrote:

I have a vba code that opens a file placed on my desktop, but this vba code
must be used in several pc's, and in every pc the desktop path is different
due to different user names.

I would like to now if it's possible to write a "generic" path for the vba
to find the files with no matter which of the pc desktops the macro is being
ran at. The files will be placed always in the desktop folder.

here is the string I am using to open the file.
Workbooks.Open "C:\Documents and Settings\[Username]\Desktop\Data_Export.xls"

Any advice would be appreciated


Sheeloo[_3_]

Generic file path Excel Macro Question
 
I had understood the problem. I thought you would be able to put the file
with the macro at the desktop or below it...

Mike has given the generic solution...

"dwake" wrote:

Maybe I wasn't specific enough. The macro is going out to the desktop and
opening an excel file(no macro in this excel file), copying a specific sheet,
pasting into the excel file where the macro is being ran, and closing the
desktop file.

My problem is this macro is being ran on different pc's, and instead
renaming the file path in the macro for each individual pc, i was wondering
if there was a generic word or phrase you can use for the username portion of
the file path going to the desktop.

"Sheeloo" wrote:

ThisWorkBook.Path will give you the path of the file containing the macro.

You can use that to get the path if you place it on the Desktop.

"dwake" wrote:

I have a vba code that opens a file placed on my desktop, but this vba code
must be used in several pc's, and in every pc the desktop path is different
due to different user names.

I would like to now if it's possible to write a "generic" path for the vba
to find the files with no matter which of the pc desktops the macro is being
ran at. The files will be placed always in the desktop folder.

here is the string I am using to open the file.
Workbooks.Open "C:\Documents and Settings\[Username]\Desktop\Data_Export.xls"

Any advice would be appreciated


dwake

Generic file path Excel Macro Question
 
Worked perfect Mike. Much appreciated.

"Mike H" wrote:

Hi,

Try this

Sub GetDesktop()
Dim desktop As String
Set objWSHShell = CreateObject("WScript.Shell")
desktop = objWSHShell.SpecialFolders("Desktop")
Workbooks.Open desktop & "\" & "Data_Export.xls"
End Sub

Mike
"dwake" wrote:

I have a vba code that opens a file placed on my desktop, but this vba code
must be used in several pc's, and in every pc the desktop path is different
due to different user names.

I would like to now if it's possible to write a "generic" path for the vba
to find the files with no matter which of the pc desktops the macro is being
ran at. The files will be placed always in the desktop folder.

here is the string I am using to open the file.
Workbooks.Open "C:\Documents and Settings\[Username]\Desktop\Data_Export.xls"

Any advice would be appreciated



All times are GMT +1. The time now is 07:48 AM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
ExcelBanter.com