-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathVBA_Homework.vb
More file actions
81 lines (43 loc) · 1.89 KB
/
VBA_Homework.vb
File metadata and controls
81 lines (43 loc) · 1.89 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
Sub Homework:
For Each ws In Worksheets
Dim WorksheetName as String
WorksheetName = ws.Name
Dim LastRow as Long
LastRow = ws.Cells(Rows.Count,1).End(xlUp).Row
Dim Ticker as String
Dim YearOpening as Double
YearOpening = ws.Cells(2,3).Value
Dim YearlyChange as Double
Dim PercentChange as Double
Dim TotalStock as Double
TotalStock = 0
Dim TableRow as Integer
TableRow = 2
For i = 2 to LastRow
If ws.Cells(i+1,1).Value<>ws.Cells(i,1).Value Then
Ticker = ws.Cells(i,1).Value
YearlyChange = ws.Cells(i,6).Value - YearOpening
If YearOpening = 0 Then
PercentChange = 0
Else PercentChange = YearlyChange / YearOpening
End If
TotalStock = TotalStock + ws.Cells(i,7).Value
ws.Range("J" & TableRow).Value = Ticker
ws.Range("K" & TableRow).Value = YearlyChange
If YearlyChange > 0 Then
ws.Range("K" & TableRow).Interior.Color = vbGreen
Else
ws.Range("K" & TableRow).Interior. Color = vbRed
End If
ws.Range("L" & TableRow).Value = PercentChange
ws.Range("L" & TableRow).NumberFormat = "0.00%"
ws.Range("M" & TableRow).Value = TotalStock
TableRow = TableRow + 1
YearOpening = ws.Cells(i+1,3).Value
TotalStock = 0
Else
TotalStock = TotalStock + ws.Cells(i,7).Value
End If
Next i
Next ws
End Sub