Excel VBAでの合格判定コードの解説

 


Excel VBAでの合格判定コードの解説

1. コードの目的

このVBAコードは、Excelの特定のシート(ここでは"Sheet4"とします)において、B列とC列の値を比較して合格判定を行います。具体的には、以下の条件を満たす場合に"合格"と表示し、それ以外の場合に"不合格"と表示します:

  • B列の値が80以上
  • C列の値が80以上

コード

Sub 合格判定()
    Dim LastRow As Long
    Dim ws As Worksheet
    Set ws = ThisWorkbook.Sheets("Sheet4")
    
    ' B列の最終行を取得
    LastRow = ws.Cells(ws.Rows.Count, "B").End(xlUp).Row
    
    ' B3から最終行まで繰り返し処理
    For i = 3 To LastRow
        If ws.Cells(i, "B").Value > 80 And ws.Cells(i, "C").Value > 80 Then
            ws.Cells(i, "D").Value = "合格"
        Else
            ws.Cells(i, "D").Value = "不合格"
        End If
    Next i
End Sub

2. コードの解説

2.1. シートの指定

最初に、Set ws = ThisWorkbook.Sheets("Sheet4")という行で"Sheet4"という名前のシートを指定しています。この部分を必要に応じて変更してください。

2.2. 最終行の取得

次に、LastRow = ws.Cells(ws.Rows.Count, "B").End(xlUp).Rowという行で、B列の最終行を取得しています。これはデータが入力されている最終行を特定するために使います。

2.3. 繰り返し処理

For i = 3 To LastRowから始まる部分は、B3から最終行までの範囲を繰り返し処理するためのループです。iは行番号を表します。

2.4. 合格判定

ループ内で、以下の条件をチェックしています:

If ws.Cells(i, "B").Value > 80 And ws.Cells(i, "C").Value > 80 Then
    ws.Cells(i, "D").Value = "合格"
Else
    ws.Cells(i, "D").Value = "不合格"
End If
  • もしB列とC列の値が80以上であれば、D列に"合格"と表示します。
  • それ以外の場合は、D列に"不合格"と表示します。