Bonjour,
j'ai un nouveau probleme sur un des tests conditionnel
J'ai ecris le code suivant :
Le code compile mais lorsque je la lance, Excel affiche une erreur de type 13 "mismatch".
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 Sub Logik_Compal() Dim MyCell As Range Dim AKNQty As Double Dim CurrentWeek As Integer CurrentWeek = DatePart("ww", Now(), 2) AKNQty = 0 For Each MyCell In Range("A1:A60000") If MyCell.Value = "United Kingdom" _ And MyCell.Offset(0, 1).Value = "COMPAL" _ And MyCell.Offset(0, 2).Value = "WIP" _ And IsDate(MyCell.Offset(0, 3).Value) = True _ And CurrentWeek = DatePart("ww", MyCell.Offset(0, 3), 2) Then AKNQty = AKNQty + MyCell.Offset(0, 4).Value End If Next MyCell Range("H3").Value = AKNQty End Sub
J'ai pu mettre en evidence que c'est la ligne
qui pose probleme car en l'enlevant la macro marche nikel.
Code : Sélectionner tout - Visualiser dans une fenêtre à part And CurrentWeek = DatePart("ww", MyCell.Offset(0, 3), 2) Then
Mais je dois sommer les quantites des commandes de la semaine en cours donc je ne peux me passer de cette condition.
Je me suis servi de DatePart comme vous me l'avez conseille. C'est vraiment curieux car sur le code suivant :
La comparaison se fait tres bien entre la Cell D4 et la semaine en cours, la macro tourne nikel!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 Sub Wk_COMPAL() Dim CurrentWeek As Integer Dim MyCell As Range Dim AKNQty As Double Set MyCell = Range("C4") CurrentWeek = DatePart("ww", Now(), 2) Range("C1").Select If DatePart("ww", MyCell.Offset(0, 1), 2) = CurrentWeek Then Range("A15").Value = "D4 est en semaine en cours" Else Range("A15").Value = "D4 : Pas semaine en cours" End If Range("A16").Value = DatePart("ww", MyCell.Offset(0, 1), 2)
Ya vraiment kelkechose qui mechappe.
Merci d'avance a la fine equipe de ce site tres reactif.
Partager