Macro qui bug

Fermé
lotussss - 14 mai 2009 à 15:50
 lotussss - 14 mai 2009 à 20:42
Bonjour,

Ja'i un problème avec cette macro : message d'erreur else sans if? quelqun a une idée? Merci.





Sub Coloration()

Dim choix As String
Dim valeur As String
Dim i As Integer

For i = 4 To 1000
Range("E" & i).Select

valeur = Selection.Offset(0, -2).Value

If valeur Like "*Virement En Votre Faveur*" Then 'e
choix = "Virement En Votre Faveur"
Else: choix = ""
End If


Range("D" & i).Select

valeur = Selection.Offset(0, -1).Value


If valeur Like "*Prelevement*" Then choix = "Prelevement" 'd
ElseIf valeur Like "*Virement Emis*" Then choix = "Virement Emis" 'd
ElseIf valeur Like "*Paiement Par Carte*" Then choix = "Paiement Par Carte" 'd
ElseIf valeur Like "*Effets Domicilies*" Then choix = "Effets Domicilies" 'd

Else: choix = ""
End If


Select Case choix
Case "Virement En Votre Faveur"
Range("E" & i).Interior.ColorIndex = 36
Case "Prelevement"
Range("D" & i).Interior.ColorIndex = 40
Case "Virement Emis"
Range("D" & i).Interior.ColorIndex = 35
Case "Paiement Par Carte"
Range("D" & i).Interior.ColorIndex = 7
Case "Effets Domicilies"
Range("D" & i).Interior.ColorIndex = 37
Case Else
Range("E" & i).Interior.ColorIndex = -4142
Case Else
Range("D" & i).Interior.ColorIndex = -4142

End Select

Next
Range("A1").Select

End Sub
A voir également:

3 réponses

Bonjour

Si tu mets l'instruction qui suit le then sur la même ligne, tout le if then else doit être sur une seule ligne
Si tu veux mettre un else sur une autre ligne, il faut que tu coupes
If valeur Like "*Prelevement*" Then
choix = "Prelevement" 'd
Elseif...
0
Merci Le Père.
J'ai une autre question . Cette macro est destinée à identifier des mots contenus sur des relevés bancaires copiés sous excel et à attribuer une couleur à un montant en fonction du mot trouvé. Le problème c'est que certaines fois la banque indique "Paiement par carte" ou "retrait au distributeur", alors que pour moi c'est une opération equivalente. Le problème c'est que si j'attribue la meme couleur à des mots differents, ou la meme couleur à deux expressions differentes contenant un meme mot commun, la macro ne prend en compte la couleur que de l'un ou l'autre et celà rend mes calculs faux par la suite. Quelqun aurait il une idee?

Merci
0
Il semblerait que ce soit la casse qui soit responsable du bug, quelqun sait comment je peux la desactiver?

Merci
0