bonjour ,
voilà mon pb du jour. je cherche à faire la somme de plusieurs quantité par rapport à un code portefeuille et un type de part (_codefonds,_typepart dans mon select)
La requete ci dessous me permet de récupérer le detail (codefonds, quantité et type de part)
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
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40 Function chargement_quantite_sousrac_omega() As Double Dim code_prod As String Dim ptr As Variant Dim quantitesousrach As Double Dim code_portefeuille As String Dim codefonds As Variant Dim dateope As Date Dim chargement_quantite_sousrac_omegaa As Variant Dim typepart_ Dim chargement_quantite_sousrac_omegaaa As Double Dim i Windows("Contrôle benchmarké1.xls").Activate Sheets("sousrac").Activate For i = 6 To 10 If (Sheets("Sousrac").Range("A" & i)) <> "" Then code_portefeuille = (Sheets("Sousrac").Range("b" & i)) dateope = (Sheets("Sousrac").Range("D1")) If code_portefeuille <> "" Then quantitesousrach = 0 Set ptr = CreateObject("ADODB.Recordset") ptr.Open " select _quantite, _codefonds, _dateoperation,_typepart from omega.fcp.sousrac where _dateoperation = '" & dateope & "' ORDER BY _codefonds,_typepart ", Mybd Do While Not ptr.EOF
Par contre je ne parviens pas à faire la somme des quantité en fonction du codefonds et du type de part.
Sous sql la requete ci dessous fonctionne bien
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 select _codefonds, sum(_quantite) as qte from Fcp.sousrac where _dateoperation = '07/09/2007' group by _codefonds, _typepart
j'ai essayé de m'en inspirer avec la requete ci-dessous
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
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80 Function chargement_quantite_sousrac_omega() As Double Dim code_prod As String Dim ptr As Variant Dim quantitesousrach As Double Dim code_portefeuille As String Dim codefonds As Variant Dim dateope As Date Dim chargement_quantite_sousrac_omegaa As Variant Dim typepart_ Dim chargement_quantite_sousrac_omegaaa As Double Dim i Windows("Contrôle benchmarké1.xls").Activate Sheets("sousrac").Activate For i = 6 To 10 If (Sheets("Sousrac").Range("A" & i)) <> "" Then code_portefeuille = (Sheets("Sousrac").Range("b" & i)) dateope = (Sheets("Sousrac").Range("D1")) If code_portefeuille <> "" Then quantitesousrach = 0 Set ptr = CreateObject("ADODB.Recordset") ptr.Open " select sum (_quantite), _codefonds, _dateoperation,_typepart from omega.fcp.sousrac where _dateoperation = '" & dateope & "' ORDER BY _codefonds,_typepart ", Mybd Do While Not ptr.EOF quantitesousrach = ptr("sum_QUANTITE") codefonds = ptr("_codefonds") typepart_ = ptr("_typepart") chargement_quantite_sousrac_omega = quantitesousrach chargement_quantite_sousrac_omegaa = codefonds MsgBox quantitesousrach & codefonds Sheets("Sousrac").Range("h" & i) = quantitesousrach Sheets("Sousrac").Range("I" & i) = codefonds Sheets("Sousrac").Range("j" & i) = typepart_ i = 1 + i ptr.movenext Loop Else End If End If Next i End Function
je me récupére le message d'erreur en pièce jointe
je ne vois pas ce qui cloche
si qqun a une idée.......
Partager