Мне нужно решение проблем.
Я пытаюсь запустить следующий код, но я всегда получаю сообщение «Ошибка времени выполнения 9: нижний индекс выходит за пределы диапазона.».
Проблема заключается в следующей строке: Set source = Workbooks (fileName) .Sheets (2)
Sub TesteNum()
Dim appExcel As Application
Dim objWorkbook As Workbook
Dim i, k, n, userAns As Integer
Dim timeCount, timeTotal As Double
Dim source, target As Worksheets
'On Error GoTo ErrorHandle
If IsEmpty(pathFolder) = True Then
Call GetFilePath
Else
userAns = MsgBox("Encontrado caminho do ficheiro, quer selecionar outro ficheiro?", vbYesNo + vbQuestion, "Empty Sheet")
If userAns = vbYes Then
Call GetFilePath
Else
End If
End If
'create new excel application object
Set appExcel = New Application
'set the applications visible property to false
appExcel.Visible = True
'open the workbook with data
Set objWorkbook = appExcel.Workbooks.Open(pathFolder)
Set source = Workbooks(fileName).Sheets(2)
Set target = ActiveWorkbook.Sheets(1)
'numRowsImport = Worksheets("NewRawData").Range("A2", Range("A2").End(xlDown)).Rows.Count
numRowsImport = source.Range("A" & source.Rows.Count).End(xlUp).Row
For k = 3 To numRowsImport
timeCount = source.Cells(k, 9).Value
timeTotal = timeTotal + timeCount
Next k
'MsgBox "O valor total é " & Format(timeTotal, "h:mm"), vbOKOnly, "Caminho do ficheiro"
target.Range("U11").Value = timeTotal
'close the workbooks
objWorkbook.Close
'close the application
appExcel.Quit
MsgBox "O valor total é " & timeTotal, vbOKOnly, "Caminho do ficheiro"
'ErrorHandle:
'MsgBox "Erro. Contacte o administrador."
End Sub
Можете ли вы, ребята, помочь мне?
Спасибо.