私は学生のための成績と習熟度を持っています。
たとえば、5年生の場合、習熟度には4つのレベルがあります。4つのレベルの習熟度はアルファベットの文字に対応しているため、5年生がBの文字を割り当てた場合、AからRの文字のレベルは「BelowProficient」になるため、彼の習熟度レベルは「BelowProficient」になります。 「私はこれをケースでどのように行うのか疑問に思っていました、
私のコードの大まかなアイデアは次のとおりです。
Function ConvertScores(Grade, Letter_Score)
Select Case ConvertScore(5, like "[A-R]")
Case ConvertScore(5, like"
ConvertScores = "F & P Remedial"
Case 2
ConvertScores = "F & P Below Proficient"
Case 3
ConvertScores = "F & P Proficient"
Case 4
ConvertScores = "F & P Advanced"
End Function
そうですね、VBAにリストオブジェクトがあればいいのですが、VBAのリストオブジェクトは何ですか?
編集:私は複数のIfステートメントでそれを行うことができましたが、ケースがより良い方法だったと私には思えます。
これが、複数のif-thenではなくcaseで使用したいコードです。
Function ConvertScoresMOY(Grade, Letter_Score) As String
If Grade = "5" And Letter_Score Like "[A-R]" Then
ConvertScoresMOY = "F & P Remedial"
ElseIf Grade = "5" And Letter_Score Like "[S-T]" Then
ConvertScoresMOY = "F & P Below Proficient"
ElseIf Grade = "5" And Letter_Score Like "[U-V]" Then
ConvertScoresMOY = "F & P Proficient"
ElseIf Grade = "5" And Letter_Score Like "[W-Z]" Then
ConvertScoresMOY = "F & P Advanced"
Else:
End If
End Function