第8講 結果を報告する社員

第6話 成績一覧表のFunctionプロシージャによる改良第2弾

成績一覧表ソフト(参考ダウンロードファイル成績一覧表社員版
vba
のFunctionプロシージャによる改良第2弾解答例
Private Sub CommandButton1_Click()
  hyouji
  datesakusei
  Dim w As Integer, i As Byte
  For i = 0 To 4
    w = syori(i)
    Cells(47, 3 + i) = w
    Cells(48, 3 + i) = w / 40
    If w / 10 >= 50 Then
      Cells(49, 3 + i) = "合格"
    Else
      Cells(49, 3 + i) = "不合格"
    End If
  Next
  For i = 0 To 39
    w = hyouka(i)
    Cells(7 + i, 8) = w
    Cells(7 + i, 9) = w / 5
    If w / 5 >= 50 Then
      Cells(7 + i, 10) = "合格"
    Else
      Cells(7 + i, 10) = "不合格"
    End If
    If w / 5 >= 55 Then
      Cells(7 + i, 11) = "優秀"
    Else
      If w / 5 >= 50 Then
        Cells(7 + i, 11) = "普通"
      Else
        Cells(7 + i, 11) = "努力が必要"
      End If
    End If
    If w / 5 >= 60 Then
      Cells(7 + i, 12) = "天才級"
    Else
      If w / 5 >= 55 Then
        Cells(7 + i, 12) = "秀才級"
      Else
        If w / 5 >= 50 Then
          Cells(7 + i, 12) = "平凡"
        Else
          Cells(7 + i, 12) = "不出来"
        End If
      End If
    End If
    If w / 5 >= 65 Then
      Cells(7 + i, 13) = "神"
    Else
      If w / 5 >= 60 Then
        Cells(7 + i, 13) = "准超越者"
      Else
        If w / 5 >= 55 Then
          Cells(7 + i, 13) = "人間"
        Else
          If w / 5 >= 45 Then
            Cells(7 + i, 13) = "人造人間ベム・ベロ・ベラ級"
          Else
            Cells(7 + i, 13) = "ピノキオ以下の存在"
          End If
        End If
      End If
    End If
  Next
  sonota
End Sub

       ・
       ・
Function hyouka(i As Byte)
   Dim j As Byte, w As Integer
   hyouka = 0
   For j = 0 To 4
      hyouka = hyouka + Cells(7 + i, 3 + j)
   Next
End Function

       ・
       ・

第7話課題です。
Sub sonota()
  Dim i As Byte, w As Integer
  w = 0
  For i = 1 To 10
    w = w + Cells(6 + i, 8)
  Next

  Cells(47, 8) = w
  Cells(48, 8) = w / 40
  Dim v As Single
  v = 0
  For i = 1 To 39
    v = v + Cells(6 + i, 9)
  Next

  Cells(47, 9) = v
  Cells(48, 9) = v / 10
  Cells(47, 2) = "合計"
  Cells(48, 2) = "平均"
  Cells(49, 2) = "評価"
End Sub
ピンクと紺の部分をFunctionプロシージャにして、独立させてください。


第5話へ 第7話へ

トップ

vc++講義へ

初心者のための世界で一番わかりやすいVisual C++入門基礎講座
初心者のための世界で一番わかりやすいVisual Basic入門基礎講座へ
vb講義へ
VB講義基礎へ
初心者のためのJava 入門 基礎から応用まで
数学研究室に戻る