salut
je suis un peu nobice en VBA et j'ai un probleme
j ai fait des boucles imbriquées qui devraient me permettre de renvoyer du texte dans deux cellules d'une ligne (et colorire la ligne) si dans cette ligne on a dans la colonne col la valeur "A.R" et que dans les 10 cellules au dessus et en dessous lorsque la cellule de la colonne A est identique à celle de la colonne A de la ligne de départ, on n'a pas la valeur "CYP" ou la valeur "CED" dans la colonne col
voila le code, je crois que ya un pb avec les if, il me dit erreur : else sans if
merci de votre aide
je suis un peu nobice en VBA et j'ai un probleme
j ai fait des boucles imbriquées qui devraient me permettre de renvoyer du texte dans deux cellules d'une ligne (et colorire la ligne) si dans cette ligne on a dans la colonne col la valeur "A.R" et que dans les 10 cellules au dessus et en dessous lorsque la cellule de la colonne A est identique à celle de la colonne A de la ligne de départ, on n'a pas la valeur "CYP" ou la valeur "CED" dans la colonne col
voila le code, je crois que ya un pb avec les if, il me dit erreur : else sans if
Code:
Sub ar()
Dim col As String
col = "i"
Dim serie As String
Dim conteurcyp As Integer
Dim conteurced As Integer
conteurced = 0
For i = 3 To [L65536].End(xlUp).Row
conteurcyp = 0 ' on met les compteurs a 0
conteurced = 0
If Range(col & i) = "A.R" And Range(O & i) > 10 Then serie = Range(A & i).Value
'[COLOR="yellowgreen"] on seuille a 10ha et on stocke le nom de la serie[/COLOR]
For j = 1 To 10 [COLOR="YellowGreen"]'on regarde si dans les 10 lignes au dessus et en dessous si c'est la meme serie et si c'est le cas ,si on a du cyp on du ced; dans ce cas on rajoute au compteur[/COLOR]
If Range(A & i - j) = serie Then
If Range(col & i - j) = "CED" Then conteurced = conteurced + 1
ElseIf Range(col & i - j) = "CYP" Then conteurcyp = conteurcyp + 1
End If
ElseIf Range(A & i + j) = serie Then
If Range(col & i + j) = "CED" Then conteurced = conteurced + 1
ElseIf Range(col & i + j) = "CYP" Then conteurcyp = conteurcyp + 1
End If
End If
Next j
If conteurcyp = 0 Then Range(P & i) = "Cypres absent de la serie" And Rows("i:i").Select
With Selection.Interior
.ColorIndex = 8
.Pattern = xlSolid
End With [COLOR="yellowgreen"]'colorie la lg si pas de cyp[/COLOR]
ElseIf conteurced = 0 Then Range(Q & i) = "Cèdre absent de la serie" And Rows("i:i").Select
With Selection.Interior
.ColorIndex = 8
.Pattern = xlSolid
End With [COLOR="yellowgreen"]'colorie la lg si pas de ced[/COLOR]
End If
End If
Next i
End Sub
merci de votre aide
Dernière édition: