#excel #vba
Вопрос:
У меня есть этот код, который позволяет мне копировать данные из одной книги в другую при соблюдении определенных критериев. Он отлично работает, когда исходная и целевая книги находятся в одном и том же месте, но он не работает, когда исходная книга находится на другом диске, чем целевая книга. Как я могу изменить свой код, чтобы он работал?
Заранее благодарю вас за вашу помощь.
Sub exportData()
Dim LastRow As Integer
Dim i As Integer
Dim erow As Integer
Dim wbk As Workbook
Dim SourceSheet As Worksheet
Dim DestSheet As Worksheet
Dim Date1, Name, Total_Time
Set SourceSheet = ActiveSheet
LastRow = SourceSheet.Range("A" amp; Rows.Count).End(xlUp).Row
Set wbk = Workbooks.Open(ThisWorkbook.Path amp; "/Allan Border Labour Hours.xlsm")
Set DestSheet = wbk.Sheets("Labour")
For i = 2 To LastRow
If SourceSheet.Cells(i, 2).Value = "Allan Border" Then
Date1 = SourceSheet.Cells(i, 1).Value
Name = SourceSheet.Cells(i, 3).Value
Total_Time = SourceSheet.Cells(i, 7).Value
erow = DestSheet.Cells(DestSheet.Rows.Count, 1).End(xlUp).Offset(1, 0).Row
DestSheet.Cells(erow, 1).Value = Date1
DestSheet.Cells(erow, 2).Value = Name
DestSheet.Cells(erow, 3).Value = Total_Time
End If
Next i
wbk.Save
wbk.Close
End Sub
Комментарии:
1. Заменить
Workbooks.Open(ThisWorkbook.Path amp; "/Allan Border Labour Hours.xlsm")
наWorkbooks.Open("full path of Allan Border Labour Hours.xlsm")
. Пример:Workbooks.Open("D:/NewFolder/Allan Border Labour Hours.xlsm")
2. Спасибо Рэймонд, сработает ли это, если файл находится на OneDrive? Пример: Рабочие книги. Открыть («https\….»)
3. Почему бы не попробовать? Хотя я не понимаю, почему бы и нет.