Bonjour,

Je suis en train d'écrire un morceau de code qui recherche dans une feuille des rangées contenant des valeurs spécifiques dans plusieurs colonnes. Il s'agit d'un simple script qui servira un mini-programme suivant la progression d'un joueur de StarCraft2.

Mon problème est le suivant: dès que le script détecte une occurence de ce que je cherche, il boucle infiniment dessus et fait exploser ma variable tenant le compte (CountMU). Je ne comprends pas... je suis un peu nouveau à VBA et je sens que j'oublie quelque chose...

Voici le code, merci d'avance pour le coup de pouce!!

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
Function CountMU(race1 As String, race2 As String, finish As String) As Integer
 
    Dim R As Range
    CountMU = 0
 
    Sheets("history").Activate
    With Sheets("history").Range("B:B")
        Set R = .Find(race1)
        If Not R Is Nothing Then
            Do
                R.Select
                If R.Offset(0, 3).Value = race2 Then
                    If R.Offset(0, -1).Value = finish Then
                        CountMU = CountMU + 1
                    End If
                End If
                Set R = .FindNext()
            Loop While Not R Is Nothing
        End If
    End With
    Set R = Nothing
End Function