Class
DESCRIPTION:
Example of Class module implementation to populate Grade column.
Procedure
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | Sub StudentClassModule_M() Dim Student As clsStudent Dim i As Integer Set Student = New clsStudent ' The 2 lines above can be written as "Dim iStudent As New clsStudent" i = 2 While Cells(i, 1) <> "" Student.Name = Cells(i, 1) 'This will execute LET statement in class module Debug.Print "Student.Name= " & Student.Name 'This will execute GET statement in class module Student.Marks = Cells(i, 2) Debug.Print "Student.Marks = " & Student.Marks Cells(i, 3) = Student.Grade i = i + 1 Wend End Sub |
Class
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 | 'clsStudent - Class module for Student Private strStuName As String Private StudentMark As Double Public Property Let Name(strN As String) strStuName = strN End Property Public Property Get Name() As String Name = strStuName End Property Public Property Let Marks(iMarks As Double) StudentMark = iMarks End Property Public Property Get Marks() As Double Marks = StudentMark End Property Public Function Grade() As String Dim StudentGrade As String Select Case StudentMark Case Is >= 80 StudentGrade = "A" Case 70 To 79 StudentGrade = "B" Case 50 To 69 StudentGrade = "C" Case Else StudentGrade = "F" End Select Grade = StudentGrade End Function |

classes_Mod_Example.xlsm
1 file(s) 18.35 KB
Ratings: