2016-05-12 2 views
0

Я пытаюсь запустить макрос, но при ссылке на файл excel, который у меня установлен, я получаю ошибку времени выполнения и основные моменты, которые ссылаются на мой путь. Я почти уверен, что это правильный путь, потому что я пошел к свойствам файла первенствовать и скопировал расположениеФайл excel не найден при ссылке на ошибку времени выполнения

Set xlWB = xlApp.Workbooks.Open(strPath) 

' Get Excel set up 
enviro = CStr(Environ("USERPROFILE")) 
'the path of the workbook 
Debug.Print strPath = enviro & "\Documents\multipliers.xls" 
    On Error Resume Next 
    Set xlApp = GetObject(, "Excel.Application") 
    If Err <> 0 Then 
     Application.StatusBar = "Please wait while Excel source is opened ... " 
     Set xlApp = CreateObject("Excel.Application") 
     bXStarted = True 
    End If 
    On Error GoTo 0 
    'Open the workbook to input the data 
    Set xlWB = xlApp.Workbooks.Open(strPath) 
    Set xlSheet = xlWB.Sheets("Test1") 
    ' Process the message record 

Location

+0

«strPath = enviro &» C: \ Users \ ltorres \ Documents \ multipliers.xls "" создает строку, подобную этой 'C: \ Users \ ltorres \ C: \ Users \ ltorres \ Documents \ multipliers.xls' – gizlmo

+0

@gizlmeier Я удалил C: \ Users \ ltorres \ from strPath = enviro & "C: \ Users \ ltorres \ Documents \ multipliers.xls и все еще получаю ошибку при установке xlWB = xlApp.Workbooks.Open (strPath) – Luis

+0

Затем вам, вероятно, не хватает \ before 'Documents' – Rory

ответ

2

Ваш файл является .xlsx файл, не .xls как в вашем коде. Измените следующую строку:

strPath = enviro & "\Documents\multipliers.xls" 

к:

strPath = enviro & "\Documents\multipliers.xlsx" 
+0

Хорошее наблюдение, теперь я получаю другую ошибку, которая является «Невозможно получить свойство Open класса Workbooks» на этой строке. Установить xlWB = xlApp.Workbooks.Open (strPath) – Luis

+0

Вы объявили xlWB как «книгу»? например 'Dim xlWB As Workbook' – Jordan

+0

У меня он тусклый для Dim xlWB As Object – Luis

0
Private Sub doingstuff() 
     Dim xlWB As Workbook 
     On Error Resume Next 
     Set xlApp = GetObject(, "Excel.Application") 
     If Err <> 0 Then 
      Application.StatusBar = "Please wait while Excel source is opened ... " 
    Set xlApp = CreateObject("Excel.Application") 
    bXStarted = True 
End If 
On Error GoTo 0 
strPath = Environ("USERPROFILE") & "\Desktop" & "\" & "Book2" & ".xlsm" 
Set xlWB = Workbooks.Open(strPath) 
End Sub 

это прекрасно работает для меня.

+0

скопирован и вставляется Debug.Print strPath = enviro &" \ Documents "&" \ "&" multipliers.xlsx "Я получаю еще отладочную ошибку в Set xlWB = xlApp.Workbooks.Open (strPath) – Luis

+0

Скорректировано, и теперь оно работает для меня. –

Смежные вопросы