Problème de code VBA pour ma caisse

Bonjour,

J’ai un problème de code VBA sur ma caisse.

Il faut compléter le paiement, quantité, et le code barre.

Le code barre (correspond aux articles qui se trouvent sur la feuille Nouvel Article).

Puis cliquer sur le bouton valider et s’inscrivent en dessous de la liste des articles (il faudrait qu’il me marque toutes les données qui correspondent au code barre qui sera scanné et qui se trouve sur la feuille nouvel article.

En cliquant sur le bouton Prix ttc au-dessus il doit marquer le total de tous les articles que le client a acheté.

Et pour finir quand on clique sur le bouton sauvegarder (toutes les informations vont se trouver sur la feuille caisse)

Voici les codes que j’ai notés en frmCaisse :

Private Sub btnEfface_Click()

If MsgBox("Etes-vous certain de vouloir supprimer la commande ?", vbYesNo, "Demande de confirmation") = vbYes Then

With Sheets("caisse")

dlf = .Range("a" & Rows.Count).End(xlUp).Row

If dlf > 1 Then .Range("a2:l" & dlf).ClearContents

txtCB = ""

txtQuantite = ""

txtPrix = ""

LiboListedetoutlesarticle = ""

cboGenre.Clear

End With

End If

End Sub

Private Sub btnFermer1_Click()

Unload Me

Private Sub btnPrix_Click()

With Sheets("Caisse")

dlf = .Range("a" & Rows.Count).End(xlUp).Row

If dlf > 1 Then

For i = 2 To dlf

Total = Total + .Range("l" & o)

Next o

End If

End With

txtPrix = Format(Total, "Currency")

End Sub

Private Sub btnSauvegarde_Click()

If MsgBox("Etes-vous certain de vouloir sauvegarder la commande ?", vbYesNo, "Demande de confirmation") = vbYes Then

If cboGenre = "" Then

MsgBox "Vous devez impérativement renseigner le mode de paiement et le nom du client pour sauvegarder la commande", vbInformation

cboGenre.SetFocus

Exit Sub

End If

paiement = cboGenre

With Sheets("Caisse")

dlf = .Range("a" & Rows.Count).End(xlUp).Row

dlf2 = Sheets("Caisse").Range("a" & Rows.Count).End(xlUp).Row + 1

If dlf > 1 Then

For i = 2 To dlf

.Range("b" & o) = CodeBarre

.Range("k" & o) = paiement

Next o

.Range("a2:f" & dlf).Copy Destination:=Sheets("Caisse").Range("a" & dlf2)

.Range("a2:f" & dlf).ClearContents

End If

End With

txtCB = ""

txtQuantite = ""

txtPrix = ""

LiboListedetoutlesarticle = ""

cboGenre.Clear

End If

End Sub

Private Sub btnvaliderlacommande_click()

If cboPaiement = "" Or TextQuantite = "" Then

MsgBox "Vous devez impérativement remplir le mode de paiement,et la quantitée ainsi l'article avant de valider", vbInformation

Exit Sub

End If

dlf_bdd = Sheets("Nouvel Article").Range("a" & Rows.Count).End(xlUp).Row

Set Table = Sheets("Nouvel Article").Range("c:j" & dlf_bdd)

ith Sheets("Caisse")

dlf = .Range("a" & Rows.Count).End(xlUp).Row + 1

.Range("a" & dlf) = Date

.Range("b" & dlf) = txtCB

.Range("c" & dlf) = Description

.Range("d" & dlf) = txtQuantite

.Range("e" & dlf) = Marque

.Range("f" & dlf) = Genre

.Range("g" & dlf) = tailleoutranchedage

.Range("h" & dlf) = Numérodedépôt

.Range("i" & dlf) = Datedébutdudépôt

.Range("j" & dlf) = Datedefindudépôt

.Range("k" & dlf) = Prix

.Range("l" & dlf) = Total

.Range("l" & dlf) = .Range("d" & dlf) * Application.WorksheetFunction.VLookup(.Range("c" & dlf), Table, 2, 0)

LiboListedetoutlesarticle.AddItem (txtCB & " x " & txtQuantite)

txtCB = ""

txtQuantite = ""

End Sub

75magasin.xlsm (53.38 Ko)

Bonjour

un petit oubli sur le bouton btnFermer1_Click il manque End Sub

Private Sub btnFermer1_Click()

    Unload Me
   End Sub

crdlt,

André

j'ai effectuer la modification, mais ça ne fonctionne toujours pas

Merci

re,

il manque beaucoup de déclarations de variable

i, o

----dans l'userform frmCaisse

dans Private Sub btnvaliderlacommande_click()

de With Sheets("Caisse")

btnvaliderlacommande_click

1/manque le W de With (ith)

2/ manque le End With

Bonjour à tous

Salut André

En effet beaucoup d'erreurs dans ton code comme le dit André

D'autre part, dans ton formulaire caisse, je ne vois pas la notion de client.

Tu vas chercher le prix dans ta feuille Caisse où tu n'as aucune ligne de saisie.... Ton calcul de prix se fait par total alors que si l'on a saisi dans la feuille caisse 2 articles , on devrait avoir prix unitaire multiplié par 2 ????

Donc, pour que l'on puisse t'aider, il faut que tu revois un peu tout cela avant de revenir à nous....

Car là, c'est pour nous la noyade assurée...

Bon courage et reviens lorsque cela est démêlé

A +

Coucou Patty

@zibourou

Je n'ai pas trop bien compris le fonctionnement code barre sans doute

j'ai légèrement un peu arrangé

à voir re-modeler re-travailler re-bosser se re-poser dessus

Effectués :

- (Onglet Nouvel Article) inversion lors du lancement de l'usf des colonnes Description & Quantités

crdlt,

André

71magasin-test2.xlsm (62.36 Ko)
Rechercher des sujets similaires à "probleme code vba caisse"