投稿/コメントを表示します。

最初に、自分で考えたものが以下の通りです。
Sub bangou()
Dim gyo
Dim Asiryo
Dim Bsiryo
Dim Csiryo
    
    Asiryo = 0
    Bsiryo = 0
    Csiryo = 0
    
    For gyo = 4 To 19
        If Range("D" & gyo).Value = "資料A" Then
            Range("B" & gyo).Value = 1
            Asiryo = Asiryo + 1
            Range("C" & gyo).Value = Asiryo
        ElseIf Range("D" & gyo).Value = "資料B" Then
            Range("B" & gyo).Value = 2
            Bsiryo = Bsiryo + 1
            Range("C" & gyo).Value = Bsiryo
        Else
            Range("D" & gyo).Value = "資料C" Then
            Range("B" & gyo).Value = 3
            Csiryo = Csiryo + 1
            Range("C" & gyo).Value = Csiryo
        End If

    Next
            
End Sub

IF文の条件を「<>」にすることは、思い付きませんでした。
 If Range("D" & gyo - 1).Value <> Range("D" & gyo).Value Then

「If○○ = ×× Then」だけでなく、「<>(等しくなかったら)」という使い方もできるのだなと、解説を観て思いました。
「等しければ」の反対は「等しくなければ」だから、「=」の条件でIF文を作るのが難しい、あるいはややこしくなるようなら、
「<>」の条件を考えて、作ってみるという方法があるのだなと思いました。
2015/02/12 08:31