Wpis z mikrobloga

Mirki powoli staram się nauczyć VBA znajdując w necie różne samouczki i przekształcając je w różny sposób. Ten oto kod:
http://excelvbatutor.com/vba_chp7.htm
Zamieniłem w ten, jednak nie wiem co napisać aby nie wyskakiwał error gdy kod zostanie użyty na literach. Może ktoś pomoże

Private Sub CommandButton2_Click()
Dim mark As Integer
Dim grade As String
mark = ActiveCell.Value

Range(ActiveCell, Cells(ActiveCell.Row + 1, ActiveCell.Column)).HorizontalAlignment = xlCenter

If ActiveCell.Value = "" Then Exit Sub
Select Case mark
Case 0 To 20
grade = "F"
ActiveCell.Offset(1, 0).Value = grade
Case 20 To 29
grade = "E"
ActiveCell.Offset(1, 0).Value = grade
Case 30 To 39
grade = "D"
ActiveCell.Offset(1, 0).Value = grade
Case 40 To 59
grade = "C"
ActiveCell.Offset(1, 0).Value = grade
Case 60 To 79
grade = "B"
ActiveCell.Offset(1, 0).Value = grade
Case 80 To 100
grade = "A"
ActiveCell.Offset(1, 0).Value = grade
Case Else
grade = MsgBox("Out of range")

End Select
End Sub

#naukaprogramowania
#vba
  • 1
Odpowiadam sam sobie, może ktoś kiedyś trafi na ten kod i będzie miał podobny problem.

If Not IsNumeric(ActiveCell.Value) Then
MsgBox ("Podana wartość nie jest liczbą")
Exit Sub
End If