Страницы: 1
RSS
Поиск файла в другой папке, если файл не найден в указанном месте
 
Добрый день!
При нажатии на кнопку должен "скрытно" открываться файл, и с него должны копироваться данные в открытый документ на определенный лист.
Ранее макрос работал хорошо, но встал вопрос "А что если файл будет в другом месте".
После добавления ветвления макрос выдает ошибку Out of range. Почему?
Переменной же был присвоен файл. В связи с чем ошибка?
Спасибо!

Ошибка возникает в 24 строке
Код
Private Sub gkk_Click()

Sheets(1).Select
Range("B6:E9").Value = Range("B6:E9").Value


Set appxl = CreateObject("Excel.application")
Dim myfile As Window
Dim currentSheet As Worksheet
Dim lastRow As Double
Dim sourceFileName As String
 
sourceFileName = "гкк.xls"
 
With appxl
    If Dir("C:\Users\User1\Downloads\") & sourceFileName = "" Then
        .Workbooks.Open ("C:\Users\User1\Downloads\test") & sourceFileName
        .Visible = False
    Else
    End If
End With

  
Set myfile = appxl.Windows(sourceFileName)
myfile.Activate
Set currentSheet = appxl.Sheets(1)
Изменено: Teemarty - 01.07.2019 10:43:45
 
Цитата
Teemarty написал:
Out of range. Почему?
потому что синтаксис никто не отменял:
Код
.Workbooks.Open ("C:\Users\User1\Downloads\test\" & sourceFileName)
обратите внимание как это записано сейчас и как у Вас. Особенно на скобки. Все, что вне скобок - уже выходит за рамки аргумента. Строка с Dir имеет ту же ошибку и всегда по всей видимости будет не отвечать условию.
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
Дмитрий(The_Prist) Щербаков, спасибо. Исправил ошибку. Все работает.
В том коде, что у меня был изначально, выходит что макрос просто проверял папку, но не понимал что в ней нужно открывать? Я правильно понимаю?
Страницы: 1
Наверх