Erreur dans le code?!

Résolu
cs_lapprentie
Messages postés
12
Date d'inscription
jeudi 26 avril 2007
Statut
Membre
Dernière intervention
2 mai 2007
- 2 mai 2007 à 09:28
jrivet
Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
- 2 mai 2007 à 10:17
Bonjour,

Une erreur subsiste toujours au niveau de la 7ème ligne de code... Voir code ci-dessous
Merci d'avance pour votre aide

Sub Alerte()
Dim i As Integer, bas As Integer
Dim message As String
message = "La facturation est incomplète pour les N° :"
 
bas = Range("A7").End(xlDown).Value
 




For i = 7 To bas


If (Cells(i, 15).Interior.Color.Index 3 Or Cells(i, 15).Interior.Color.Index 7) And _
    Cells(i, 15).Value <> Cells(i, 16).Value Then


            message = message & " - " & CStr(i)
           
        End If
End If




Next i


MsgBox (message)


End Sub

10 réponses

Big200148
Messages postés
149
Date d'inscription
mardi 30 septembre 2003
Statut
Membre
Dernière intervention
23 juillet 2009

2 mai 2007 à 09:34
tu as 2 end if deja, je sais pas si 'est ca
3
jrivet
Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
60
2 mai 2007 à 09:55
Salut,
Ah non en fait c'est parce que tu mets .
 
Interior.Color.Index AU LIEU DE Interior.ColorIndex

enfin je crois

@+: Ju£i?n
Pensez: Réponse acceptée
3
jrivet
Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
60
2 mai 2007 à 10:17
Salut,
Le code que tu as mis fonctionne très bien chez moi sous Excel 2000.

@+: Ju£i?n
Pensez:
Réponse acceptée
3
jrivet
Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
60
2 mai 2007 à 09:38
Salut,
Quelle est cette Erreur?

Que représente Bas pour toi (c'est la valeur contenu dans la dernier cellule non vide de la colonne A si je ne me trompe pas)

@+: Ju£i?n
Pensez: Réponse acceptée
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_lapprentie
Messages postés
12
Date d'inscription
jeudi 26 avril 2007
Statut
Membre
Dernière intervention
2 mai 2007

2 mai 2007 à 09:44
Il y a deux if, c incorrect, mais je l'ai rectifié entre temps.
Mais subsiste tjrs une erreur à cette ligne
If (Cells(i, 15).Interior.Color.Index 3 Or Cells(i, 15).Interior.Color.Index 7) And _
    Cells(i, 15).Value <> Cells(i, 16).Value Then...

erreur 424 objet requis...

Bas représente bien la dernière valeur (->integer) de la colonne A.
0
jrivet
Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
60
2 mai 2007 à 09:46
Re,
Est ce que cela plante directement, ou est ce que c'est avec une certaine valeur de i?

@+: Ju£i?n
Pensez: Réponse acceptée
0
cs_lapprentie
Messages postés
12
Date d'inscription
jeudi 26 avril 2007
Statut
Membre
Dernière intervention
2 mai 2007

2 mai 2007 à 09:50
ça plante directement. quand je pointe sur i, i a pour valeur 7, valeur à laquelle commence mon for.
0
cs_lapprentie
Messages postés
12
Date d'inscription
jeudi 26 avril 2007
Statut
Membre
Dernière intervention
2 mai 2007

2 mai 2007 à 09:59
Ben, non: j'écris bienIf (Cells(i, 15).Interior.Color.Index 3 Or Cells(i, 15).Interior.Color.Index 7) And _
0
jrivet
Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
60
2 mai 2007 à 10:01
Salut,
relis mieux ce que je te marques....
.Interior.Color.Index ca c'est faux,
c'est

Interior.ColorIndex QUI EST JUSTE


@+: Ju£i?n
Pensez: Réponse acceptée
0
cs_lapprentie
Messages postés
12
Date d'inscription
jeudi 26 avril 2007
Statut
Membre
Dernière intervention
2 mai 2007

2 mai 2007 à 10:08
j'avoue, là ça dvient grâve.......

Au passage, sais-tu comment faire apparaître automatiquement cet msgbox (voir code précédent) après 15 s de l'ouverture de la feuille, sous xl 2000

sous 2003, je sais:

dans thisWorkbook:
PrivateSub Workbook_Open()
Application.OnTime Now + TimeSerial(0, 0, 15), "MaProcedure"
EndSub

dans module:
Sub MaProcedure()
MsgBox "hello"
EndSub
0