![]() |
Path and Name
Hello to all!
Here is my problem: I need to know the name and path of a file that is selected through "Application.GetOpenFilename()." However whenever I try to run the code "Run-time error '9': Subscript out of range" message comes up. I thought that it could be the file path is too long(files on the network) however when I selected a local file and my hd the same message still came up. Here is the code: Private Sub CommandButton1_Click() Dim file As String, Path1 As String, name As String file = Application.GetOpenFilename() Path1 = Workbooks(file).Path name = Workbooks(file).Name End Sub |
Path and Name
That is because the Workbooks collection pertains to OPEN workbooks. Your
code hasn't opened the filename retrieved by GetOpenFilename. Either open it and use your c ode, or parse it manually. -- HTH Bob Phillips (replace somewhere in email address with gmail if mailing direct) "SoSoExcelGuy" wrote in message ... Hello to all! Here is my problem: I need to know the name and path of a file that is selected through "Application.GetOpenFilename()." However whenever I try to run the code "Run-time error '9': Subscript out of range" message comes up. I thought that it could be the file path is too long(files on the network) however when I selected a local file and my hd the same message still came up. Here is the code: Private Sub CommandButton1_Click() Dim file As String, Path1 As String, name As String file = Application.GetOpenFilename() Path1 = Workbooks(file).Path name = Workbooks(file).Name End Sub |
Path and Name
Continuing on from Bob's reply:
If you want the file to open then use: Private Sub CommandButton2_Click() Dim file As String, Path1 As String, name As String file = Application.GetOpenFilename() Workbooks.Open file Path1 = ActiveWorkbook.Path name = ActiveWorkbook.name End Sub If you don't wnt the file open first, use the split function: ie file2=split(file,"\") and then look at all the elements of array file2. ChasAA "SoSoExcelGuy" wrote: Hello to all! Here is my problem: I need to know the name and path of a file that is selected through "Application.GetOpenFilename()." However whenever I try to run the code "Run-time error '9': Subscript out of range" message comes up. I thought that it could be the file path is too long(files on the network) however when I selected a local file and my hd the same message still came up. Here is the code: Private Sub CommandButton1_Click() Dim file As String, Path1 As String, name As String file = Application.GetOpenFilename() Path1 = Workbooks(file).Path name = Workbooks(file).Name End Sub |
Path and Name
Thanks for the help guys!
"ChasAA" wrote: Continuing on from Bob's reply: If you want the file to open then use: Private Sub CommandButton2_Click() Dim file As String, Path1 As String, name As String file = Application.GetOpenFilename() Workbooks.Open file Path1 = ActiveWorkbook.Path name = ActiveWorkbook.name End Sub If you don't wnt the file open first, use the split function: ie file2=split(file,"\") and then look at all the elements of array file2. ChasAA "SoSoExcelGuy" wrote: Hello to all! Here is my problem: I need to know the name and path of a file that is selected through "Application.GetOpenFilename()." However whenever I try to run the code "Run-time error '9': Subscript out of range" message comes up. I thought that it could be the file path is too long(files on the network) however when I selected a local file and my hd the same message still came up. Here is the code: Private Sub CommandButton1_Click() Dim file As String, Path1 As String, name As String file = Application.GetOpenFilename() Path1 = Workbooks(file).Path name = Workbooks(file).Name End Sub |
All times are GMT +1. The time now is 10:43 AM. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com