Bonjour,

Ci joint après mon module.

Ce que je ne comprends pas c'est que ma première condition (ligne 20 à 29)fonctionne alors que le deuxième non "Else sans IF" ligne 77 à 81

j'ai beau chercher je ne vois pas.

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
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
unction Automatisme()
 Dim Rep1 As Integer
 Dim Rep2 As Integer
 Dim Rep3 As Integer
 Dim Rep4 As Integer
 
Dim Mois As Integer
Dim NumSem As Integer
Dim monsql_manquant As String
Dim monsql_BNC As String
Dim monsql_MvtStock As String
Dim monsql_SupmvtStock As String
Dim monsql_SupBnC As String
Dim monsql_SupManquant As String
 
 
On Error GoTo Macro2_Err
 
    Rep1 = MsgBox("Voulez vous mettre la table adressage à jour?", vbYesNo, "")
     If Rep1 = vbYes Then
             Rep2 = MsgBox("Le Fichier Excel est il mise à jour?", vbYesNo, "")
                    If Rep2 = vbYes Then GoTo PointA
                    ElseIf Rep2 = vbNo Then
                    MsgBox "Merci de mettre le fichier à jour", vbOKOnly, ""
                    Exit Function
 
 
    ElseIf Rep1 = vbNo Then GoTo PointB
    End If
 
 
PointA:
    DoCmd.SetWarnings False
    DoCmd.OpenQuery "Sup_T_Adresssage", acViewNormal, acEdit
    DoCmd.SetWarnings False
    DoCmd.OpenQuery "Ajout Adressage", acViewNormal, acAdd
 
PointB:
Mois = InputBox("Veuillez saisir un numéro de mois entre 1 et 12", "saisir le mois")
NumSem = InputBox("Veuillez saisir un numéro de semaine entre 1 et 52", "saisir le numéro de semaine")
 
monsql_manquant = _
"INSERT INTO [BD Manquant] ( Année, Mois, Semaine, Catégorie, Circuit, " & _
"ITM8, [Libellé ITM8], [Nb UVC], Conditionnement, [Prix UC], Valo ) " & _
"SELECT 2013 AS Année, " & Mois & " AS Expr1, " & NumSem & " AS Expr2, " & _
"Val([Fampro]) AS Expr3, ExManquant.Cirpic, Val([ITM 8]) AS Expr4, " & _
"ExManquant.Désignation, ExManquant.[Ecart en UVC], ExManquant.PCB, " & _
"ExManquant.[Prix UC],[Prix UC]*[Ecart en UVC] AS Valo " & _
"FROM ExManquant;"
 
monsql_BNC = _
"INSERT INTO [BD BNC] ( Année, Mois, Semaine, Catégorie, [Valo Cession]," & _
"ITM8, [Libellé ITM8], Qté, [Px UC], Motifs, [Avoir/Facture] )" & _
"SELECT 2013 AS Année, " & Mois & " AS Expr1, " & NumSem & " AS Expr2, Val([Categorie]) AS Expr3," & _
"EXBNC.[Valo au Px Cession], EXBNC.Itm8, EXBNC.[Libelle Article], EXBNC.[Quantite SUM]," & _
"EXBNC.[Pcsfac SUM], EXBNC.[motifs TR16/TR14], IIf([Type]=1,-[Valo au Px Cession]," & _
"[Valo au Px Cession]) AS [Avoir/Facture]" & _
"FROM EXBNC;"
 
 
 
monsql_MvtStock = _
"INSERT INTO [BDMvtStock] ( Année, Mois, Semaine, Catégorie, ITM8, " & _
"LibelléITM8, MvtStock, [Valorisation Mvt Stock] ) " & _
"SELECT 2013 AS Année, " & Mois & " AS Expr1, " & NumSem & " AS Expr2, " & _
"Val([F1]) AS Expr3, Val([F2]) AS Expr4, [Mvt Stock].F3, [Mvt Stock].F5, " & _
"[Mvt Stock].F7 FROM [Mvt Stock];"
 
    DoCmd.SetWarnings False
    DoCmd.RunSQL monsql_manquant
    DoCmd.RunSQL monsql_BNC
    DoCmd.RunSQL monsql_MvtStock
    DoCmd.OpenQuery "Contrôle Nombre de Lignes intégrées", acViewNormal, acEdit
 
 On Error GoTo Macro2_Err
 
     Rep3 = MsgBox("Le nombre de lignes est-il correct?", vbYesNo, "")
     If Rep3 = vbYes Then GoTo PointC
 
 
    ElseIf Rep3 = vbNo Then
 
monsql_SupmvtStock = _
"Delete [BDMvtStock] (Mois, BDMvtStock.Semaine)" & _
"FROM [BDMvtStock]" & _
"WHERE (((BDMvtStock.Mois)=" & Mois & ") AND ((BDMvtStock.Semaine)=" & NumSem & "));"
 
monsql_SupManquant = _
"Delete [BD Manquant] (Mois, [BD Manquant].Semaine)" & _
"FROM [BD Manquant]" & _
"WHERE ((([BD Manquant].Mois)=" & Mois & ") AND (([BD Manquant].Semaine)=" & Numsem & "));"
 
monsql_SupBnC = _
"DELETE [BD BNC] (Mois, [BD BNC].Semaine)" & _
"FROM [BD BNC]" & _
" WHERE ((([BD BNC].Mois)=" & Mois & ") AND (([BD BNC].Semaine)=" & NumSem & "));"
 
    End If
 
GoTo PointB
 
PointC:
    DoCmd.TransferSpreadsheet acExport, 0, "TCDDemarque", "D:\Mes Documents\00 - Réel\2012\Vimy\Access Démarque\Demarque_circuit 074.xls", True, ""
    Beep
    MsgBox "Export Excel effectué", vbInformation, "Export Excel"
 
    DoCmd.Quit acSave
    DoCmd.SetWarnings True
 
 
Macro2_Exit:
    Exit Function
 
Macro2_Err:
    MsgBox Error$
    Resume Macro2_Exit
 
End Function
Merci de votre aide