I am trying to ID certain properties from my company's pipeline that meet various criteria. The raw data will be exported into "Sheet 1". On "Sheet 2" I will have criteria inputs. The VBA code will then paste desired values (this will not include all data in a row from the raw data) if they meet the inputted criteria.
I am trying to write VBA code that does the following: 1. Checks if a row meets 4 different criteria. These criteria are "Period Start"(bound by earliest entry), "Period End", "Asset Class"(drop down list), and "Capital Partner"(drop down list).
Appreciate the help in advance!!!
Sub test()
Application.ScreenUpdating = False
Dim row As Integer Dim endrow As Integer
row = Range("PipelineStart").row + 1 endrow = Cells(Rows.count, 1).End(xlUp).row
j = 12 Do While row <= endrow
If Worksheets("Sheet1").Cells(row, 1).Value > Range("ActivityReport_StartDate").Value And Worksheets("Sheet1").Cells(row, 1).Value <= Range("ActivityReport_EndDate").Value And Worksheets("Sheet1").Cells(row, 5).Value = Range("ActivityReport_CapitalPartner").Value And Worksheets("Sheet1").Cells(row, 10).Value = Range("ActivityReport_AssetClass").Value Then
Worksheets("Sheet2").Cells(j, 3) = Worksheets("Sheet1").Cells(row, 1).Value
Worksheets("Sheet2").Cells(j, 4) = Worksheets("Sheet1").Cells(row, 2).Value
Worksheets("Sheet2").Cells(j, 5) = Worksheets("Sheet1").Cells(row, 5).Value
Worksheets("Sheet2").Cells(j, 6) = Worksheets("Sheet1").Cells(row, 6).Value
Worksheets("Sheet2").Cells(j, 7) = Worksheets("Sheet1").Cells(row, 8).Value
Worksheets("Sheet2").Cells(j, 8) = Worksheets("Sheet1").Cells(row, 9).Value
Worksheets("Sheet2").Cells(j, 9) = Worksheets("Sheet1").Cells(row, 10).Value
Worksheets("Sheet2").Cells(j, 10) = Worksheets("Sheet1").Cells(row, 11).Value
Worksheets("Sheet2").Cells(j, 11) = Worksheets("Sheet1").Cells(row, 12).Value
Worksheets("Sheet2").Cells(j, 12) = Worksheets("Sheet1").Cells(row, 13).Value
Worksheets("Sheet2").Cells(j, 13) = Worksheets("Sheet1").Cells(row, 14).Value
Worksheets("Sheet2").Cells(j, 14) = Worksheets("Sheet1").Cells(row, 15).Value
Worksheets("Sheet2").Cells(j, 15) = Worksheets("Sheet1").Cells(row, 25).Value
Worksheets("Sheet2").Cells(j, 16) = Worksheets("Sheet1").Cells(row, 26).Value
Worksheets("Sheet2").Cells(j, 17) = Worksheets("Sheet1").Cells(row, 27).Value
Worksheets("Sheet2").Cells(j, 18) = Worksheets("Sheet1").Cells(row, 29).Value
Worksheets("Sheet2").Cells(j, 19) = Worksheets("Sheet1").Cells(row, 30).Value
j = j + 1
row = row + 1
End If
Loop
Application.ScreenUpdating = True
End Sub
I expect the values from rows that meet all inputted criteria to be populated but my "if" statement is highlighted and I get the following error:
Run-Time Error '9' Subscript out of range
Aucun commentaire:
Enregistrer un commentaire