Bonjour,

Moi et un ami sommes actuellement en train de travailler sur Excel et VB pour essayer de faire un devis, dans un premier temps je vais vous exposer les codes actuels et ensuite je vous exposerai ce que nous cherchons à finir !

Feuil1
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
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
Private Sub CommandButton1_Click()

Dim x As Integer
Dim f As String

MsgBox (" Nous vous proposons divers prix en fonction de votre nombre d'invités " & Chr(13) & " Si votre nombre d'invités est inférieur à 50 le coût du repas par personne est de 20 euros. " & Chr(13) & " Si votre nombre d'invités est compris entre 50 et 100 le coût du repas par personne est de 15 euros" & Chr(13) & " Si votre nombre d'invités est compris entre 100 et 150 le coût du repas par personne est de 10 euros" & Chr(13) & " Si votre nombre d'invités est supérieur à 150 le coût du repas par personne est de 7 euros ")

x = InputBox(" Entrez le nombre d'invités.")
Cells(25, 4).Value = x


If x < 50 Then
    r = x * 20
End If
If x < 100 Then
    r = x * 15
End If
If x < 150 Then
    r = x * 10
End If
If x > 150 Then
    r = x * 7
End If
Cells(27, 4).Value = r

MsgBox ("Prix des alcools:" & Chr(13) & "1 verre par personne = 1 € par personne (tapez 1)" & Chr(13) & "2 verres par personne = 2 € par personne (tapez 2)" & Chr(13) & "3 verres par personne = 3 € par personne (tapez 3)" & Chr(13) & "Distribution d'alcool illimité = 5 € par personne (tapez 5)")

A = InputBox("Choisissez la quantité d'alcool désirée." & Chr(13) & "Si aucun n'alcool n'est désirée tapez 0.")
If A = 1 Then
    f = x * 1
End If
If A = 2 Then
    f = x * 2
End If
If A = 3 Then
    f = x * 3
End If
If A = 5 Then
    f = x * 5
End If
If A = 0 Then
    f = x * 0
End If
Cells(29, 4).Value = f

p = InputBox("Desirez vous des pattiseries?")
If p Then
    l = p * 0.25
End If
Cells(31, 4).Value = l

MsgBox ("Choix retenus :" & A & Chr(13) & "alcools : " & Af & Chr(13) & "Pattiseries : " & l & Chr(13) & "Repas : " & r)

coutrepas = r
coutalcool = f
coutpatisseries = l
cout = (coutrepas + coutalcool + coutpatisseries)

MsgBox ("Cout total : " & cout)

Cells(35, 4).Value = cout

Cells(44, 7).Value = cout

End Sub

Private Sub CommandButton2_Click()


Dim x As Integer
Dim y As Integer
Dim f As Integer

Dim A As String
Dim B As String
Dim C As String
Dim D As String

Dim H As String
Dim S As String


x = InputBox("Entrez le nombre d'invités pour votre évènement")
Cells(25, 9).Value = x

y = InputBox("Quel est le nombre d'invités adultes ?")
Cells(26, 9).Value = y

f = x - y
Cells(27, 9).Value = f

MsgBox ("Votre nombre d'invités adultes est donc de " & y & "." & " Votre nombre d'invités enfants est de " & f & ".")


MsgBox ("Nous vous proposons diverses formules : " & Chr(13) & " La formule A comprend le service traiteur, la livraison, le service et le nettoyage." & Chr(13) & " La formule B comprend le service traiteur la livraison et le service." & Chr(13) & " La formule C comprend le service traiteur et la livraison." & Chr(13) & " La formule D comprend uniquement le service traiteur.")
choix = ""
While ((choix <> "A") And (choix <> "B") And (choix <> "C") And (choix <> "D"))
choix = InputBox("quelle formule (A,B,C,D) choisissez-vous?")
Wend
Cells(31, 9).Value = choix

traiteur = 0
livraison = 0
service = 0
nettoyage = 0

If (choix = "A") Then
traiteur = 1
livraison = 1
service = 1
nettoyage = 1
End If

If (choix = "B") Then
traiteur = 1
livraison = 1
service = 1
End If

If (choix = "C") Then
traiteur = 1
livraison = 1
End If

If (choix = "D") Then
traiteur = 1
End If

reduction = 0.1 * x
Cells(29, 9).Value = 0.1 * x

Menu = ""
While ((Menu <> "S") And (Menu <> "H"))
Menu = InputBox("Quel menu souhaitez-vous?('S' pour standard,'H' pour Haut de gamme)")
Wend
Cells(32, 9).Value = Menu

Dessert = ""
While ((Dessert <> "G") And (Dessert <> "P"))
Dessert = InputBox("Quel dessert  souhaitez-vous? ('G' pour Gateau,'P' pour Pièce montée)")
Wend
Cells(33, 9).Value = Dessert

If (Dessert = "G") Then
    coutdessert = 2 * x
Else
    If x > 100 Then
        Piece = 2
    Else
        If x > 50 Then
            Piece = 3
        Else
            Piece = 4
        End If
    End If
    coutdessert = Piece * x
End If



MsgBox ("Choix retenus :" & Chr(13) & "Dessert Gateau / Piece montée : " & Dessert & Chr(13) & "Menu Standard / Haut de gamme : " & Menu)

If (Menu = "H") Then
couttraiteur = 7 * f + 10 * y
Else
couttraiteur = 7 * y + 5 * f
End If
couttraiteur = couttraiteur * traiteur
coutlivraison = 50 * livraison
coutnettoyage = 200 * nettoyage
coutservice = ((Round(0.1 * x + 0.49999999) * 40) * service)
cout = ((couttraiteur + coutlivraison + coutnettoyage + coutservice + coutdessert + coutmenu) * (1 - reduction / 100))

MsgBox ("Cout total : " & cout)
Cells(35, 9).Value = cout


Cells(44, 7).Value = cout

Call Module1
End Sub

Module1
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
Sub ExporterTableauVersWord1()

Dim wrdApp As Word.Application
Dim wrdDoc As Word.Document

Range("C23:D35").Copy
Set wrdApp = CreateObject("Word.Application")
Set wrdDoc = wrdApp.Documents.Open("C:\devis.doc")
wrdApp.Visible = True
wrdApp.Selection.Paste
wrdDoc.SaveAs ("C:\devis.doc")
wrdDoc.Close
wrdApp.Quit

End Sub
Voila voila, alors comme vous pouvez le voir j'ai mis en rouge là ou ca cloche ! Pour être plus précis dans Feuil1, je veux appeler mon module pour qu'il se lance une fois que l'on a finit de répondre au formulaire, pouvez vous m'aider sur la ligne à mettre pour pouvoir faire cela ?

Et enfin, dans Module1, j'ai mis une ligne qui est sensé coller mon tableau sur une nouvelle page word qui est le récapitulatif du devis qui se remplit au fur et à mesure que l'on répond aux questions, pouvez-vous m'aider a savoir pourquoi cette ligne de code ne marche pas et par quoi pourrais-je la remplacer ?

Cordialement !