Quantcast
Channel: Active questions tagged excel - Stack Overflow
Viewing all articles
Browse latest Browse all 90251

Is it possible to make the following macro smaller and more efficient? [closed]

$
0
0

I have created the following macro to run a spreadsheet. Can anyone suggest making it shorter and more efficient.

I tried to at least to add values in alternative columns minimize the use of if conditions but couldn't figure it out with the time limit I have.

Sub SubContractorClaim()

Dim lastrow As Long
Dim i As Integer

lastrow = Worksheets("Return of Works").Cells(Rows.Count, 2).End(xlUp).Row





     For i = 24 To lastrow

         Worksheets("Return of Works").Cells(i, 7).ClearContents


         If Worksheets("Return of Works").Cells(i, 8) > 0 And Worksheets("Return of Works").Cells(i, 6) > 0 Then
         Worksheets("Return of Works").Cells(i, 7) = Worksheets("Return of Works").Cells(i, 8) / Worksheets("Return of Works").Cells(i, 6)
         ElseIf Worksheets("Return of Works").Cells(i, 8) = "" Then
         Worksheets("Return of Works").Cells(i, 7) = ""

         End If

         Worksheets("Return of Works").Cells(i, 7).NumberFormat = "0.00%"

         Worksheets("Return of Works").Cells(i, 9).ClearContents

         If Worksheets("Return of Works").Cells(i, 10) > 0 And Worksheets("Return of Works").Cells(i, 6) > 0 Then
         Worksheets("Return of Works").Cells(i, 9) = Worksheets("Return of Works").Cells(i, 10) / Worksheets("Return of Works").Cells(i, 6)
         ElseIf Worksheets("Return of Works").Cells(i, 10) = "" Then
         Worksheets("Return of Works").Cells(i, 9) = ""

         End If

         Worksheets("Return of Works").Cells(i, 9).NumberFormat = "0.00%"



         If Worksheets("Return of Works").Cells(7, 3) = 1 Then

         Worksheets("Return of Works").Cells(i, 18) = Worksheets("Return of Works").Cells(i, 10)
         Worksheets("Return of Works").Cells(i, 17) = Worksheets("Return of Works").Cells(i, 9)

         ElseIf Worksheets("Return of Works").Cells(7, 3) = 2 Then
         Worksheets("Return of Works").Cells(i, 20) = Worksheets("Return of Works").Cells(i, 10)
         Worksheets("Return of Works").Cells(i, 19) = Worksheets("Return of Works").Cells(i, 9)

         ElseIf Worksheets("Return of Works").Cells(7, 3) = 3 Then
         Worksheets("Return of Works").Cells(i, 22) = Worksheets("Return of Works").Cells(i, 10)
         Worksheets("Return of Works").Cells(i, 21) = Worksheets("Return of Works").Cells(i, 9)

         ElseIf Worksheets("Return of Works").Cells(7, 3) = 4 Then
         Worksheets("Return of Works").Cells(i, 24) = Worksheets("Return of Works").Cells(i, 10)
         Worksheets("Return of Works").Cells(i, 23) = Worksheets("Return of Works").Cells(i, 9)

         ElseIf Worksheets("Return of Works").Cells(7, 3) = 5 Then
         Worksheets("Return of Works").Cells(i, 26) = Worksheets("Return of Works").Cells(i, 10)
         Worksheets("Return of Works").Cells(i, 25) = Worksheets("Return of Works").Cells(i, 9)

         ElseIf Worksheets("Return of Works").Cells(7, 3) = 6 Then
         Worksheets("Return of Works").Cells(i, 28) = Worksheets("Return of Works").Cells(i, 10)
         Worksheets("Return of Works").Cells(i, 27) = Worksheets("Return of Works").Cells(i, 9)

         ElseIf Worksheets("Return of Works").Cells(7, 3) = 7 Then
         Worksheets("Return of Works").Cells(i, 30) = Worksheets("Return of Works").Cells(i, 10)
         Worksheets("Return of Works").Cells(i, 29) = Worksheets("Return of Works").Cells(i, 9)

         ElseIf Worksheets("Return of Works").Cells(7, 3) = 8 Then
         Worksheets("Return of Works").Cells(i, 32) = Worksheets("Return of Works").Cells(i, 10)
         Worksheets("Return of Works").Cells(i, 31) = Worksheets("Return of Works").Cells(i, 9)

         ElseIf Worksheets("Return of Works").Cells(7, 3) = 9 Then
         Worksheets("Return of Works").Cells(i, 34) = Worksheets("Return of Works").Cells(i, 10)
         Worksheets("Return of Works").Cells(i, 33) = Worksheets("Return of Works").Cells(i, 9)

         ElseIf Worksheets("Return of Works").Cells(7, 3) = 10 Then
         Worksheets("Return of Works").Cells(i, 36) = Worksheets("Return of Works").Cells(i, 10)
         Worksheets("Return of Works").Cells(i, 35) = Worksheets("Return of Works").Cells(i, 9)

         ElseIf Worksheets("Return of Works").Cells(7, 3) = 11 Then
         Worksheets("Return of Works").Cells(i, 38) = Worksheets("Return of Works").Cells(i, 10)
         Worksheets("Return of Works").Cells(i, 37) = Worksheets("Return of Works").Cells(i, 9)

         ElseIf Worksheets("Return of Works").Cells(7, 3) = 12 Then
         Worksheets("Return of Works").Cells(i, 40) = Worksheets("Return of Works").Cells(i, 10)
         Worksheets("Return of Works").Cells(i, 39) = Worksheets("Return of Works").Cells(i, 9)


         End If


         If Worksheets("Return of Works").Cells(7, 3) = 1 Then
         Worksheets("Return of works").Cells(i, 14) = Worksheets("Return of Works").Cells(i, 18)

         ElseIf Worksheets("Return of Works").Cells(7, 3) = 2 Then
         Worksheets("Return of works").Cells(i, 14) = Worksheets("Return of Works").Cells(i, 18) + Worksheets("Return of Works").Cells(i, 20)

         ElseIf Worksheets("Return of Works").Cells(7, 3) = 3 Then
         Worksheets("Return of works").Cells(i, 14) = Worksheets("Return of Works").Cells(i, 18) + Worksheets("Return of Works").Cells(i, 20) + Worksheets("Return of Works").Cells(i, 22)

         ElseIf Worksheets("Return of Works").Cells(7, 3) = 4 Then
         Worksheets("Return of works").Cells(i, 14) = Worksheets("Return of Works").Cells(i, 18) + Worksheets("Return of Works").Cells(i, 20) + Worksheets("Return of Works").Cells(i, 22) + Worksheets("Return of Works").Cells(i, 24)

         ElseIf Worksheets("Return of Works").Cells(7, 3) = 5 Then
         Worksheets("Return of works").Cells(i, 14) = Worksheets("Return of Works").Cells(i, 18) + Worksheets("Return of Works").Cells(i, 20) + Worksheets("Return of Works").Cells(i, 22) + Worksheets("Return of Works").Cells(i, 24) + Worksheets("Return of Works").Cells(i, 26)

         ElseIf Worksheets("Return of Works").Cells(7, 3) = 6 Then
         Worksheets("Return of works").Cells(i, 14) = Worksheets("Return of Works").Cells(i, 18) + Worksheets("Return of Works").Cells(i, 20) + Worksheets("Return of Works").Cells(i, 22) + Worksheets("Return of Works").Cells(i, 24) + Worksheets("Return of Works").Cells(i, 26) + Worksheets("Return of Works").Cells(i, 28)

         ElseIf Worksheets("Return of Works").Cells(7, 3) = 7 Then
         Worksheets("Return of works").Cells(i, 14) = Worksheets("Return of Works").Cells(i, 18) + Worksheets("Return of Works").Cells(i, 20) + Worksheets("Return of Works").Cells(i, 22) + Worksheets("Return of Works").Cells(i, 24) + Worksheets("Return of Works").Cells(i, 26) + Worksheets("Return of Works").Cells(i, 28) + Worksheets("Return of Works").Cells(i, 30)

         ElseIf Worksheets("Return of Works").Cells(7, 3) = 8 Then
         Worksheets("Return of works").Cells(i, 14) = Worksheets("Return of Works").Cells(i, 18) + Worksheets("Return of Works").Cells(i, 20) + Worksheets("Return of Works").Cells(i, 22) + Worksheets("Return of Works").Cells(i, 24) + Worksheets("Return of Works").Cells(i, 26) + Worksheets("Return of Works").Cells(i, 28) + Worksheets("Return of Works").Cells(i, 30) + Worksheets("Return of Works").Cells(i, 32)

         ElseIf Worksheets("Return of Works").Cells(7, 3) = 9 Then
         Worksheets("Return of works").Cells(i, 14) = Worksheets("Return of Works").Cells(i, 18) + Worksheets("Return of Works").Cells(i, 20) + Worksheets("Return of Works").Cells(i, 22) + Worksheets("Return of Works").Cells(i, 24) + Worksheets("Return of Works").Cells(i, 26) + Worksheets("Return of Works").Cells(i, 28) + Worksheets("Return of Works").Cells(i, 30) + Worksheets("Return of Works").Cells(i, 32) + Worksheets("Return of Works").Cells(i, 34)

         ElseIf Worksheets("Return of Works").Cells(7, 3) = 10 Then
         Worksheets("Return of works").Cells(i, 14) = Worksheets("Return of Works").Cells(i, 18) + Worksheets("Return of Works").Cells(i, 20) + Worksheets("Return of Works").Cells(i, 22) + Worksheets("Return of Works").Cells(i, 24) + Worksheets("Return of Works").Cells(i, 26) + Worksheets("Return of Works").Cells(i, 28) + Worksheets("Return of Works").Cells(i, 30) + Worksheets("Return of Works").Cells(i, 32) + Worksheets("Return of Works").Cells(i, 34) + Worksheets("Return of Works").Cells(i, 36)

         ElseIf Worksheets("Return of Works").Cells(7, 3) = 11 Then
         Worksheets("Return of works").Cells(i, 14) = Worksheets("Return of Works").Cells(i, 18) + Worksheets("Return of Works").Cells(i, 20) + Worksheets("Return of Works").Cells(i, 22) + Worksheets("Return of Works").Cells(i, 24) + Worksheets("Return of Works").Cells(i, 26) + Worksheets("Return of Works").Cells(i, 28) + Worksheets("Return of Works").Cells(i, 30) + Worksheets("Return of Works").Cells(i, 32) + Worksheets("Return of Works").Cells(i, 34) + Worksheets("Return of Works").Cells(i, 36) + Worksheets("Return of Works").Cells(i, 38)

         ElseIf Worksheets("Return of Works").Cells(7, 3) = 12 Then
         Worksheets("Return of works").Cells(i, 14) = Worksheets("Return of Works").Cells(i, 18) + Worksheets("Return of Works").Cells(i, 20) + Worksheets("Return of Works").Cells(i, 22) + Worksheets("Return of Works").Cells(i, 24) + Worksheets("Return of Works").Cells(i, 26) + Worksheets("Return of Works").Cells(i, 28) + Worksheets("Return of Works").Cells(i, 30) + Worksheets("Return of Works").Cells(i, 32) + Worksheets("Return of Works").Cells(i, 34) + Worksheets("Return of Works").Cells(i, 36) + Worksheets("Return of Works").Cells(i, 38) + Worksheets("Return of Works").Cells(i, 40)

         End If

         Worksheets("Return of Works").Cells(i, 13).ClearContents

         If Worksheets("Return of Works").Cells(i, 14) > 0 And Worksheets("Return of Works").Cells(i, 6) > 0 Then
         Worksheets("Return of Works").Cells(i, 13) = Worksheets("Return of Works").Cells(i, 14) / Worksheets("Return of Works").Cells(i, 6)
         ElseIf Worksheets("Return of Works").Cells(i, 14) = "" Then
         Worksheets("Return of Works").Cells(i, 13) = ""

         End If


         If Worksheets("Return of Works").Cells(7, 3) = 1 Then
         Worksheets("Return of works").Cells(i, 12) = 0

         ElseIf Worksheets("Return of Works").Cells(7, 3) = 2 Then
         Worksheets("Return of works").Cells(i, 12) = Worksheets("Return of Works").Cells(i, 18)

         ElseIf Worksheets("Return of Works").Cells(7, 3) = 3 Then
         Worksheets("Return of works").Cells(i, 12) = Worksheets("Return of Works").Cells(i, 18) + Worksheets("Return of Works").Cells(i, 20)

         ElseIf Worksheets("Return of Works").Cells(7, 3) = 4 Then
         Worksheets("Return of works").Cells(i, 12) = Worksheets("Return of Works").Cells(i, 18) + Worksheets("Return of Works").Cells(i, 20) + Worksheets("Return of Works").Cells(i, 22)

         ElseIf Worksheets("Return of Works").Cells(7, 3) = 4 Then
         Worksheets("Return of works").Cells(i, 12) = Worksheets("Return of Works").Cells(i, 18) + Worksheets("Return of Works").Cells(i, 20) + Worksheets("Return of Works").Cells(i, 22) + Worksheets("Return of Works").Cells(i, 24)

         ElseIf Worksheets("Return of Works").Cells(7, 3) = 5 Then
         Worksheets("Return of works").Cells(i, 12) = Worksheets("Return of Works").Cells(i, 18) + Worksheets("Return of Works").Cells(i, 20) + Worksheets("Return of Works").Cells(i, 22) + Worksheets("Return of Works").Cells(i, 24) + Worksheets("Return of Works").Cells(i, 26)

         ElseIf Worksheets("Return of Works").Cells(7, 3) = 6 Then
         Worksheets("Return of works").Cells(i, 12) = Worksheets("Return of Works").Cells(i, 18) + Worksheets("Return of Works").Cells(i, 20) + Worksheets("Return of Works").Cells(i, 22) + Worksheets("Return of Works").Cells(i, 24) + Worksheets("Return of Works").Cells(i, 26) + Worksheets("Return of Works").Cells(i, 28)

         ElseIf Worksheets("Return of Works").Cells(7, 3) = 7 Then
         Worksheets("Return of works").Cells(i, 12) = Worksheets("Return of Works").Cells(i, 18) + Worksheets("Return of Works").Cells(i, 20) + Worksheets("Return of Works").Cells(i, 22) + Worksheets("Return of Works").Cells(i, 24) + Worksheets("Return of Works").Cells(i, 26) + Worksheets("Return of Works").Cells(i, 28) + Worksheets("Return of Works").Cells(i, 30)

         ElseIf Worksheets("Return of Works").Cells(7, 3) = 8 Then
         Worksheets("Return of works").Cells(i, 12) = Worksheets("Return of Works").Cells(i, 18) + Worksheets("Return of Works").Cells(i, 20) + Worksheets("Return of Works").Cells(i, 22) + Worksheets("Return of Works").Cells(i, 24) + Worksheets("Return of Works").Cells(i, 26) + Worksheets("Return of Works").Cells(i, 28) + Worksheets("Return of Works").Cells(i, 30) + Worksheets("Return of Works").Cells(i, 32)

         ElseIf Worksheets("Return of Works").Cells(7, 3) = 9 Then
         Worksheets("Return of works").Cells(i, 12) = Worksheets("Return of Works").Cells(i, 18) + Worksheets("Return of Works").Cells(i, 20) + Worksheets("Return of Works").Cells(i, 22) + Worksheets("Return of Works").Cells(i, 24) + Worksheets("Return of Works").Cells(i, 26) + Worksheets("Return of Works").Cells(i, 28) + Worksheets("Return of Works").Cells(i, 30) + Worksheets("Return of Works").Cells(i, 32) + Worksheets("Return of Works").Cells(i, 34)

         ElseIf Worksheets("Return of Works").Cells(7, 3) = 10 Then
         Worksheets("Return of works").Cells(i, 12) = Worksheets("Return of Works").Cells(i, 18) + Worksheets("Return of Works").Cells(i, 20) + Worksheets("Return of Works").Cells(i, 22) + Worksheets("Return of Works").Cells(i, 24) + Worksheets("Return of Works").Cells(i, 26) + Worksheets("Return of Works").Cells(i, 28) + Worksheets("Return of Works").Cells(i, 30) + Worksheets("Return of Works").Cells(i, 32) + Worksheets("Return of Works").Cells(i, 34) + Worksheets("Return of Works").Cells(i, 36)

         ElseIf Worksheets("Return of Works").Cells(7, 3) = 11 Then
         Worksheets("Return of works").Cells(i, 12) = Worksheets("Return of Works").Cells(i, 18) + Worksheets("Return of Works").Cells(i, 20) + Worksheets("Return of Works").Cells(i, 22) + Worksheets("Return of Works").Cells(i, 24) + Worksheets("Return of Works").Cells(i, 26) + Worksheets("Return of Works").Cells(i, 28) + Worksheets("Return of Works").Cells(i, 30) + Worksheets("Return of Works").Cells(i, 32) + Worksheets("Return of Works").Cells(i, 34) + Worksheets("Return of Works").Cells(i, 36) + Worksheets("Return of Works").Cells(i, 38)

         ElseIf Worksheets("Return of Works").Cells(7, 3) = 12 Then
         Worksheets("Return of works").Cells(i, 12) = Worksheets("Return of Works").Cells(i, 18) + Worksheets("Return of Works").Cells(i, 20) + Worksheets("Return of Works").Cells(i, 22) + Worksheets("Return of Works").Cells(i, 24) + Worksheets("Return of Works").Cells(i, 26) + Worksheets("Return of Works").Cells(i, 28) + Worksheets("Return of Works").Cells(i, 30) + Worksheets("Return of Works").Cells(i, 32) + Worksheets("Return of Works").Cells(i, 34) + Worksheets("Return of Works").Cells(i, 36) + Worksheets("Return of Works").Cells(i, 38) + Worksheets("Return of Works").Cells(i, 40)


         End If

         Worksheets("Return of Works").Cells(i, 11).ClearContents

         If Worksheets("Return of Works").Cells(i, 12) > 0 And Worksheets("Return of Works").Cells(i, 6) > 0 Then
         Worksheets("Return of Works").Cells(i, 11) = Worksheets("Return of Works").Cells(i, 12) / Worksheets("Return of Works").Cells(i, 6)
         ElseIf Worksheets("Return of Works").Cells(i, 12) = "" Then
         Worksheets("Return of Works").Cells(i, 11) = ""

         End If

         If Worksheets("Return of Works").Cells(i, 6) = "" Then
         Worksheets("Return of Works").Cells(i, 12) = ""
         Worksheets("Return of Works").Cells(i, 13) = ""
         Worksheets("Return of Works").Cells(i, 14) = ""

         End If


         If Worksheets("Return of Works").Cells(i, 14) > Worksheets("Return of Works").Cells(i, 6) Then
         Worksheets("Return of Works").Cells(i, 14).Interior.Color = RGB(255, 0, 0)
         MsgBox "Error! Check Column J. Approved total claim value cannot be greater than contract value"

         End If
     Next

End Sub

Viewing all articles
Browse latest Browse all 90251

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>