OVH Cloud OVH Cloud

select case et and

3 réponses
Avatar
Jean-Pierre
Bonjour,

Ci-joint une aplication qui me pose problème.

La première partie fonctionne bien, mais quand j'ai une valeur supérieur à
7600 je reste à la ligne
Case Is >= 1600 And (Sheets("f1").Cells(i, 7) * 1) < 7600

je pense qu'il doit y avoir une erreur de syntaxe, mais laquelle ?


merci pour l'aide

Jean-Pierre


Select Case (Sheets("f1").Cells(i, 7) * 1)
Case Is = 0
dde_nb_0 = dde_nb_0 + 1
dde_hono_0 = dde_hono_0 + (Sheets("f1").Cells(i, 8) * 1)

Case Is < 1600
dde_nb_1600 = dde_nb_1600 + 1
dde_hono_1600 = dde_hono_1600 + (Sheets("f1").Cells(i, 8) * 1)

Case Is >= 1600 And (Sheets("f1").Cells(i, 7) * 1) < 7600
dde_nb_16_76 = dde_nb_16_76 + 1
dde_hono_16_76 = dde_hono_16_76 + (Sheets("f1").Cells(i, 8) * 1)

Case Is >= 7600 And Sheets("f1").Cells(i, 7) < 15000
dde_nb_76_150 = dde_nb_76_150 + 1
dde_hono_76_150 = dde_hono_76_150 + (Sheets("f1").Cells(i, 8) * 1)

Case Is > 15000
dde_nb_sup_150 = dde_nb_sup_150 + 1
dde_hono_sup_150 = dde_hono_sup_150 + (Sheets("f1").Cells(i, 8) * 1)
End Select

3 réponses

Avatar
Pierre Fauconnier
Bonjour

Je propose ceci

case is >= 1600
if sheets("f1").Cells(i, 7) * 1) < 7600 then
...
...
end if
case ...


Cela convient-il?


--
Pierre Fauconnier ()
Les sept laids tuent ( Lewis Carol )
Remplacez nospam.nospam par pfi.be pour répondre. Merci


"Jean-Pierre" a écrit dans le message de
news:L2kkd.13444$
Bonjour,

Ci-joint une aplication qui me pose problème.

La première partie fonctionne bien, mais quand j'ai une valeur supérieur à
7600 je reste à la ligne
Case Is >= 1600 And (Sheets("f1").Cells(i, 7) * 1) < 7600

je pense qu'il doit y avoir une erreur de syntaxe, mais laquelle ?


merci pour l'aide

Jean-Pierre


Select Case (Sheets("f1").Cells(i, 7) * 1)
Case Is = 0
dde_nb_0 = dde_nb_0 + 1
dde_hono_0 = dde_hono_0 + (Sheets("f1").Cells(i, 8) * 1)

Case Is < 1600
dde_nb_1600 = dde_nb_1600 + 1
dde_hono_1600 = dde_hono_1600 + (Sheets("f1").Cells(i, 8) * 1)

Case Is >= 1600 And (Sheets("f1").Cells(i, 7) * 1) < 7600
dde_nb_16_76 = dde_nb_16_76 + 1
dde_hono_16_76 = dde_hono_16_76 + (Sheets("f1").Cells(i, 8) * 1)

Case Is >= 7600 And Sheets("f1").Cells(i, 7) < 15000
dde_nb_76_150 = dde_nb_76_150 + 1
dde_hono_76_150 = dde_hono_76_150 + (Sheets("f1").Cells(i, 8) * 1)

Case Is > 15000
dde_nb_sup_150 = dde_nb_sup_150 + 1
dde_hono_sup_150 = dde_hono_sup_150 + (Sheets("f1").Cells(i, 8) *
1)

End Select




Avatar
Jean-Pierre
ça marche avec le if, mais pourquoi le "And" ne fontionne pas ?

JP


"Pierre Fauconnier" a écrit dans le
message de news: OduqM%
Bonjour

Je propose ceci

case is >= 1600
if sheets("f1").Cells(i, 7) * 1) < 7600 then
...
...
end if
case ...


Cela convient-il?


--
Pierre Fauconnier ()
Les sept laids tuent ( Lewis Carol )
Remplacez nospam.nospam par pfi.be pour répondre. Merci


"Jean-Pierre" a écrit dans le message de
news:L2kkd.13444$
Bonjour,

Ci-joint une aplication qui me pose problème.

La première partie fonctionne bien, mais quand j'ai une valeur supérieur
à
7600 je reste à la ligne
Case Is >= 1600 And (Sheets("f1").Cells(i, 7) * 1) < 7600

je pense qu'il doit y avoir une erreur de syntaxe, mais laquelle ?


merci pour l'aide

Jean-Pierre


Select Case (Sheets("f1").Cells(i, 7) * 1)
Case Is = 0
dde_nb_0 = dde_nb_0 + 1
dde_hono_0 = dde_hono_0 + (Sheets("f1").Cells(i, 8) * 1)

Case Is < 1600
dde_nb_1600 = dde_nb_1600 + 1
dde_hono_1600 = dde_hono_1600 + (Sheets("f1").Cells(i, 8) * 1)

Case Is >= 1600 And (Sheets("f1").Cells(i, 7) * 1) < 7600
dde_nb_16_76 = dde_nb_16_76 + 1
dde_hono_16_76 = dde_hono_16_76 + (Sheets("f1").Cells(i, 8) * 1)

Case Is >= 7600 And Sheets("f1").Cells(i, 7) < 15000
dde_nb_76_150 = dde_nb_76_150 + 1
dde_hono_76_150 = dde_hono_76_150 + (Sheets("f1").Cells(i, 8) * 1)

Case Is > 15000
dde_nb_sup_150 = dde_nb_sup_150 + 1
dde_hono_sup_150 = dde_hono_sup_150 + (Sheets("f1").Cells(i, 8) *
1)

End Select








Avatar
Denis
Bonjour,

l'aide en ligne VBA sur select est claire à ce sujet.
Cela te permettra de plus de réorganiser ton select case

Denis
-----Message d'origine-----
ça marche avec le if, mais pourquoi le "And" ne fontionne
pas ?


JP


"Pierre Fauconnier" a
écrit dans le

message de news: OduqM%


Bonjour

Je propose ceci

case is >= 1600
if sheets("f1").Cells(i, 7) * 1) < 7600 then
...
...
end if
case ...


Cela convient-il?


--
Pierre Fauconnier ()
Les sept laids tuent ( Lewis Carol )
Remplacez nospam.nospam par pfi.be pour répondre. Merci


"Jean-Pierre" a écrit dans le
message de


news:L2kkd.13444$
Bonjour,

Ci-joint une aplication qui me pose problème.

La première partie fonctionne bien, mais quand j'ai
une valeur supérieur



à
7600 je reste à la ligne
Case Is >= 1600 And (Sheets("f1").Cells(i, 7) * 1) <
7600




je pense qu'il doit y avoir une erreur de syntaxe,
mais laquelle ?





merci pour l'aide

Jean-Pierre


Select Case (Sheets("f1").Cells(i, 7) * 1)
Case Is = 0
dde_nb_0 = dde_nb_0 + 1
dde_hono_0 = dde_hono_0 + (Sheets("f1").Cells
(i, 8) * 1)




Case Is < 1600
dde_nb_1600 = dde_nb_1600 + 1
dde_hono_1600 = dde_hono_1600 + (Sheets
("f1").Cells(i, 8) * 1)




Case Is >= 1600 And (Sheets("f1").Cells(i, 7) *
1) < 7600



dde_nb_16_76 = dde_nb_16_76 + 1
dde_hono_16_76 = dde_hono_16_76 + (Sheets
("f1").Cells(i, 8) * 1)




Case Is >= 7600 And Sheets("f1").Cells(i, 7) <
15000



dde_nb_76_150 = dde_nb_76_150 + 1
dde_hono_76_150 = dde_hono_76_150 + (Sheets
("f1").Cells(i, 8) * 1)




Case Is > 15000
dde_nb_sup_150 = dde_nb_sup_150 + 1
dde_hono_sup_150 = dde_hono_sup_150 + (Sheets
("f1").Cells(i, 8) *



1)
End Select








.