Not sure how well it will post over, but here it is:
i = 8
If recExists = True Then
Do Until Range("G" & i) = "End"
If Len(Range("G" & i)) > 4 Then
If Mid(Range("G" & i), 5, 1) = "," Or Mid(Range("G" & i), 6, 1) = "," Then
arrayRange = Split(Range("G" & i), ",")
For r = 0 To UBound(arrayRange)
acctVal = arrayRange(r)
For acct = 0 To UBound(arrayAcct, 2)
If arrayAcct(0, acct) = acctVal Then
'Get Montly Figure
Range("B" & i).Value = Range("B" & i).Value + (arrayAcct(creditMonth, acct) - arrayAcct(debitMonth, acct))
'Get Period to Date Figure (array fields 6-18 19-31)
Range("D" & i).Value = Range("D" & i).Value + ((arrayAcct(6, acct) + arrayAcct(7, acct) + arrayAcct(8, acct) + arrayAcct(9, acct) + arrayAcct(10, acct) + arrayAcct(11, acct) + arrayAcct(12, acct) + arrayAcct(13, acct) + arrayAcct(14, acct) + arrayAcct(15, acct) + arrayAcct(16, acct) + arrayAcct(17, acct) + arrayAcct(18, acct)) - (arrayAcct(19, acct) + arrayAcct(20, acct) + arrayAcct(21, acct) + arrayAcct(22, acct) + arrayAcct(23, acct) + arrayAcct(24, acct) + arrayAcct(25, acct) + arrayAcct(26, acct) + arrayAcct(27, acct) + arrayAcct(28, acct) + arrayAcct(29, acct) + arrayAcct(30, acct) + arrayAcct(31, acct)))
Exit For
End If
Next
Next
Else
If Mid(Range("G" & i), 5, 2) = "TO" Or Mid(Range("G" & i), 6, 2) = "TO" Then
RangeStart = Split(Range("G" & i), "TO")(0)
RangeEnd = Split(Range("G" & i), "TO")(1)
For acct = 0 To UBound(arrayAcct, 2)
If Val(arrayAcct(0, acct)) >= Val(RangeStart) And Val(arrayAcct(0, acct)) <= Val(RangeEnd) Then
'Get Montly Figure
Range("B" & i).Value = Range("B" & i).Value + (arrayAcct(creditMonth, acct) - arrayAcct(debitMonth, acct))
'Get Period to Date Figure (array fields 6-18 19-31)
Range("D" & i).Value = Range("D" & i).Value + ((arrayAcct(6, acct) + arrayAcct(7, acct) + arrayAcct(8, acct) + arrayAcct(9, acct) + arrayAcct(10, acct) + arrayAcct(11, acct) + arrayAcct(12, acct) + arrayAcct(13, acct) + arrayAcct(14, acct) + arrayAcct(15, acct) + arrayAcct(16, acct) + arrayAcct(17, acct) + arrayAcct(18, acct)) - (arrayAcct(19, acct) + arrayAcct(20, acct) + arrayAcct(21, acct) + arrayAcct(22, acct) + arrayAcct(23, acct) + arrayAcct(24, acct) + arrayAcct(25, acct) + arrayAcct(26, acct) + arrayAcct(27, acct) + arrayAcct(28, acct) + arrayAcct(29, acct) + arrayAcct(30, acct) + arrayAcct(31, acct)))
End If
Next
End If
End If
Else
acctVal = Range("G" & i)
For acct = 0 To UBound(arrayAcct, 2)
If Val(arrayAcct(0, acct)) = acctVal Then
'Get Montly Figure
Range("B" & i).Value = Range("B" & i).Value + (arrayAcct(creditMonth, acct) - arrayAcct(debitMonth, acct))
'Get Period to Date Figure (array fields 6-18 19-31)
Range("D" & i).Value = Range("D" & i).Value + ((arrayAcct(6, acct) + arrayAcct(7, acct) + arrayAcct(8, acct) + arrayAcct(9, acct) + arrayAcct(10, acct) + arrayAcct(11, acct) + arrayAcct(12, acct) + arrayAcct(13, acct) + arrayAcct(14, acct) + arrayAcct(15, acct) + arrayAcct(16, acct) + arrayAcct(17, acct) + arrayAcct(18, acct)) - (arrayAcct(19, acct) + arrayAcct(20, acct) + arrayAcct(21, acct) + arrayAcct(22, acct) + arrayAcct(23, acct) + arrayAcct(24, acct) + arrayAcct(25, acct) + arrayAcct(26, acct) + arrayAcct(27, acct) + arrayAcct(28, acct) + arrayAcct(29, acct) + arrayAcct(30, acct) + arrayAcct(31, acct)))
Exit For
End If
Next
End If
i = i + 1
Loop
End If
Yes, you will notice I did not use a Select Case statement since I was unable to directly plug the values of the cell into the Case criteria (which was what I was originally asking about), but instead used the Split function (A good alternative).