Bonjour,

Je ne suis pas certaine si je poste ma demande au bon endroit dans le forum.

Mon problème est que ma requête SQl fonction très bien dans SQl Développer et quand je l'insère dans EXCEl erreur ora-00933 command not proprely ended.

Voici ma requête

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
81
82
83
84
85
86
87
88
89
90
sReq = sReq & _
            "SELECT " & vbCrLf & _
            "CASE WHEN WV.Orde_Line > 1000 THEN WV2.Xfo_Vendu ELSE WF.Xfo_Fab END AS Xfo_Fab," & vbCrLf & _
            "CASE WHEN WV.Orde_Line > 1000 THEN WV2.Version ELSE WF.Revision END AS Revision, " & vbCrLf & _
            "X.Id_Xfo," & vbCrLf & _
            "Min (PEX.Debut_Execution)" & vbCrLf & _
            "FROM Planif_Etape_Xfo PEX" & vbCrLf & _
            "INNER JOIN Xfo X ON" & vbCrLf & _
            "X.In_Entity = PEX.In_Entity AND" & vbCrLf & _
            "X.Id_Xfo = PEX.Id_Xfo" & vbCrLf & _
            "INNER JOIN Wo_Fab WF ON" & vbCrLf & _
            "WF.In_Entity = X.In_Entity AND" & vbCrLf & _
            "WF.Wo_No = X.Wo_No" & vbCrLf & _
            "LEFT JOIN XfoChois XC ON" & vbCrLf & _
            "XC.In_Entity = X.In_Entity AND" & vbCrLf & _
            "XC.Id_Xfo = X.Id_Xfo" & vbCrLf & _
            "LEFT JOIN Wo_Vendu WV ON" & vbCrLf & _
            "WV.In_Entity = XC.In_Entity AND" & vbCrLf & _
            "WV.Orde_No = XC.Orde_No AND" & vbCrLf & _
            "WV.Orde_Line = XC.Orde_Line" & vbCrLf & _
            "LEFT JOIN Wo_Vendu WV2 ON" & vbCrLf & _
            "WV2.In_Entity = WV.In_Entity AND" & vbCrLf & _
            "WV2.Orde_No = WV.Orde_No AND" & vbCrLf & _
            "WV2.Orde_Line = (WV.Orde_Line - 1000)"
 
     sReq = sReq & _
            "WHERE PEX.In_Entity = 'DG' AND" & vbCrLf & _
            "((WV.Orde_Line <= 1000 AND" & vbCrLf & _
            "(PEX.Etape_No = 700 OR" & vbCrLf & _
            "PEX.Etape_No = 705)) OR" & vbCrLf & _
            "(WV.Orde_Line > 1000 AND" & vbCrLf & _
            "PEX.Etape_No = 850)) AND" & vbCrLf & _
            "PEX.Debut_Execution BETWEEN TO_DATE('" & dfPer.Debut & "', 'YYYY/MM/DD') AND TO_DATE('" & dfPer.Fin & "', 'YYYY/MM/DD')" & vbCrLf & _
            "Group BY" & vbCrLf & _
            "WF.Xfo_Fab," & vbCrLf & _
            "WF.Revision," & vbCrLf & _
            "X.Id_Xfo," & vbCrLf & _
            "WV.Orde_Line," & vbCrLf & _
            "WV2.Xfo_Vendu," & vbCrLf & _
            "WV2.Version" & vbCrLf & _
            "Union"
 
 
      sReq = sReq & _
            "SELECT" & vbCrLf & _
                "WV2.Xfo_Vendu AS Xfo_Fab," & vbCrLf & _
                "WV2.Version AS Revision," & vbCrLf & _
                "X.Id_Xfo," & vbCrLf & _
                "Min (PE.Debut_Execution)" & vbCrLf & _
            "FROM" & vbCrLf & _
                "Wo_Vendu WV"
 
      sReq = sReq & _
            "INNER JOIN Wo_Vendu WV2 ON" & _
                "WV2.In_Entity = WV.In_Entity AND" & _
                "WV2.Orde_No = WV.Orde_No AND" & _
                "WV2.Orde_Line = (WV.Orde_Line - 1000)" & vbCrLf & _
            "INNER JOIN XfoChois XC ON" & _
                "XC.In_Entity = WV.In_Entity AND" & _
                "XC.Orde_No = WV.Orde_No AND" & _
                "XC.Orde_Line = WV.Orde_Line"
 
     sReq = sReq & _
            "INNER JOIN XfoChois XC2 ON" & _
                "XC2.In_Entity = WV2.In_Entity AND" & _
                "XC2.Orde_No = WV2.Orde_No AND" & _
                "XC2.Orde_Line = WV2.Orde_Line" & vbCrLf & _
            "INNER JOIN Xfo_Ext X ON" & _
                "X.In_Entity = XC.In_Entity AND" & _
                "X.Id_Xfo = XC.Id_Xfo"
 
     sReq = sReq & _
            "INNER JOIN Planif_Etape PE ON" & _
                "PE.In_Entity = XC2.In_Entity AND" & _
                "PE.Orde_No = XC2.Orde_No AND" & _
                "PE.Orde_Line = XC2.Orde_Line AND" & _
                "PE.Orde_Line_Seq = XC2.Orde_Line_Seq"
 
      sReq = sReq & _
             "WHERE" & vbCrLf & _
                "WV.In_Entity = 'DG' AND" & vbCrLf & _
                "PE.Etape_No = 850 AND" & vbCrLf & _
                "PE.Debut_Execution BETWEEN TO_DATE('" & dfPer.Debut & "', 'YYYY/MM/DD') AND TO_DATE('" & dfPer.Fin & "', 'YYYY/MM/DD')" & vbCrLf & _
            "Group BY" & vbCrLf & _
                "WV2.Xfo_Vendu," & vbCrLf & _
                "WV2.Version," & vbCrLf & _
                "X.Id_Xfo" & vbCrLf & _
                "Order BY" & vbCrLf & _
                "Xfo_Fab," & vbCrLf & _
                "Revision"

Merci