Caisse : Si ref deja existante dans colonne, alors ajoute 1, VBA AIDE

Bonjour tout le monde, J'ai besoin d'une aide sur un code VBA que je souhaite mettre en place pour ma caisse enregistreuse.

Tout marche à peu près comme je veux, mais j'ai une erreur dans mon code que je n'arrive pas à comprendre.

Je voulais mettre le fichier mais il est trop lourd, désolé.

Alors je m'explique :

En colonne B, à partir de B6 jusque B1000, je rentre les codes barres (EAN) des produits que je scanne

En colonne L, j'ai les quantités correspondantes au produit en B.

J'ai crée un code VBA pour dire que :

- Quand je rentre un code barre en B, il me mette 1 en quantité en colonne L (Target.offset(0,10).value =1)

- Si le code barre que je rentre en B est déja présent dans la colonne B (donc si je scanne un article que j'ai déjà scanné avant) donc (If Cell.Value = Target.Value And Cell.Address <> Target.Address And Target <> 0 Then), alors il va m'ajouter une quantité en face de la référence déja existante (Cell.Offset(0, 10).Value = Cell.Offset(0, 10).Value + 1)

et il efface la cellule qui vient d'être crée (Target.ClearContents) et revient à la première cellule vide (ActiveSheet.Cells(Rows.Count, "B").End(xlUp)(2).Select)

- Et bien sûr, s'il n'y a pas de référence dans la cellule de la colonne B, alors il ne fait rien.

J'ai donc crée ce code mais j'ai une erreur et je n'arrive pas à comprendre, pourquoi mon code fait beuger excel, dans mon VBA le calcul se fait sur les 1000 lignes et ça rame ou ça plante : Il me met en erreur : ESPACE INSUFFISANT et surligne SET PLAGEPOINT b6 : b1000 en jaune.

Private Sub Worksheet_Change(ByVal Target As Range)

Set plagepoint = Range("B6:B1000")

For Each Cell In plagepoint

If Cell.Value = Target.Value And Cell.Address <> Target.Address And Target <> 0 Then

Cell.Offset(0, 10).Value = Cell.Offset(0, 10).Value + 1

Target.ClearContents

ActiveSheet.Cells(Rows.Count, "B").End(xlUp)(2).Select

ElseIf Cell.Value <> Target.Value And Target <> 0 Then

Target.Offset(0, 10).Value = 1

ElseIf Cell.Value <> Target.Value And Target = 0 Then Exit Sub

End If

Next

End Sub

AUriez-vous une idée pour m'aider SVP ? J'espère que j'étais clair =)

Belle journée à toutes et tous !

Bonjour

Je voulais mettre le fichier mais il est trop lourd

Passe par www.cjoint.com. Tu obtiendras un lien qu'il te suffira de copier et de coller dans ton prochain message.

Bye !

Merci ! Je ne connaissais pas

C'est dans l'onglet vente

Essaie comme ça :

Bye !

Rechercher des sujets similaires à "caisse ref deja existante colonne ajoute vba aide"