Мой текущий код считывает manhours (целочисленные значения) из разных рабочих книг и экспортирует их в столбец в основном выходном листе.После каждого импорта я хочу суммировать общее количество часов, которое экспортируется на основной лист, однако я не уверен, как это сделать без суммирования всего столбца.Кроме того, после суммирования общего количества человеко-часов на каждом листе я хочу сравнить это значение со значением на листе, чтобы подтвердить, правильно ли я скопировал все строки.
Мой выходной лист выглядит так после каждого импорта:
data----------data----------hours(sheet1)
data----------data----------hours(sheet1)
data----------data----------hours(sheet1)
data----------data----------hours(sheet2)
data----------data----------hours(sheet2)
Мой текущий код выглядит так:
Option Explicit
Sub manhours()
Dim Files As Variant
Dim i As Long
Dim j As Long
Dim sh As worksheet
Dim outputsheet As Worksheet
Dim erow As long
Dim manhours As Long
Workbooks.Open Files(i)
Set sh = Sheets("manhours")
For j = 2 to 30
erow = outputsheet.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Row 'empty row
If IsEmpty(Cells(j, 3) = False Then
outputsheet.Cells(erow, 1).Resize(1, 2).Value = sh.Cells(j, 1).Resize(1, 2).Value 'copies the first 2 columns containing other data values
outputsheet.Cells(erow, 3) = sh.Cells(j, 3) 'column 3 from sh contains manhours
End If
Next j
manhours = Application.WorksheetFunction.Sum(outputsheet.Columns(3)) 'unsure how to sum only the values from sheet i and not the entire column
MsgBox (manhours) ' msgbox than gives the total man hours
manhours = sh.Range("C31") 'total manhours from sheet is in sh.Range("C31")
'MsgBox (True/False) 'unsure how to do this
Next i
End Sub