Hi All

My code works, but looks really inefficient and I would welcome improvements.

Part 1. This looks at each column in a range and records the cell value as a variable called "Mth(X)" where X is the column number. I'm okay with this part.

For Col = 48 To 59
        If Cells(Row, Col).Value > 0 Then
            Mth(Col) = 1
        Else
            Mth(Col) = 0
        End If
    Next Col
Part 2. This part should find the starting column (StartCol), then write out the 12 variables recorded in part 1, moving across the range two columns at a time. This seems inefficient, but I couldn't figure out how to LOOP through my variables.

 If EmpRateFreq = "A" Then
            StartCol = 2
        Else
            StartCol = 3
        End If
        ' write out the month variables, adding the existing values
        Cells(TableRow, StartCol).Select 'month 1
        ExistingValue = ActiveCell.Value
        ActiveCell.Value = Mth(48) + ExistingValue
        
        Cells(TableRow, StartCol + 2).Select 'month 2
        ExistingValue = ActiveCell.Value
        ActiveCell.Value = Mth(49) + ExistingValue
        
        Cells(TableRow, StartCol + 4).Select 'month 3
        ExistingValue = ActiveCell.Value
        ActiveCell.Value = Mth(50) + ExistingValue
        
        Cells(TableRow, StartCol + 6).Select 'month 4
        ExistingValue = ActiveCell.Value
        ActiveCell.Value = Mth(51) + ExistingValue
        
        Cells(TableRow, StartCol + 8).Select 'month 5
        ExistingValue = ActiveCell.Value
        ActiveCell.Value = Mth(52) + ExistingValue
        
        Cells(TableRow, StartCol + 10).Select 'month 6
        ExistingValue = ActiveCell.Value
        ActiveCell.Value = Mth(53) + ExistingValue
        
        Cells(TableRow, StartCol + 12).Select 'month 7
        ExistingValue = ActiveCell.Value
        ActiveCell.Value = Mth(54) + ExistingValue
        
        Cells(TableRow, StartCol + 14).Select 'month 8
        ExistingValue = ActiveCell.Value
        ActiveCell.Value = Mth(55) + ExistingValue
        
        Cells(TableRow, StartCol + 16).Select 'month 9
        ExistingValue = ActiveCell.Value
        ActiveCell.Value = Mth(56) + ExistingValue
        
        Cells(TableRow, StartCol + 18).Select 'month 10
        ExistingValue = ActiveCell.Value
        ActiveCell.Value = Mth(57) + ExistingValue
        
        Cells(TableRow, StartCol + 20).Select 'month 11
        ExistingValue = ActiveCell.Value
        ActiveCell.Value = Mth(58) + ExistingValue
        
        Cells(TableRow, StartCol + 22).Select 'month 12
        ExistingValue = ActiveCell.Value
        ActiveCell.Value = Mth(59) + ExistingValue
Any help provided would be appreciated.

Thanks in advance.

Happy Hole