TextBox recherche valeur dans colonne

Résolu
lanxade Messages postés 32 Statut Membre -  
lanxade Messages postés 32 Statut Membre -
Bonjour,

Un petit soucis de programme :
J'ai un UserForm1 par lequel j'ai ouvert Mon fichier ("Stock"). et une feuille de ce fichier ("Feuille1").Select
Dans cette feuille je possède en Range ("O2") un NBVal de la colonne "B"

Une Colonne "Articles" = Colonne "A"
Une Colonne "references" = Colonne "B"
Une Colonne Quantité = Colonne "C"

Je connais donc la Valeur de la dernière ligne de ma colonne "B".

Dans ce UserForm1
>Un textBox2 dans lequel j'ai inséré un "Article" ("Bobine").
> Un textBox4 dans lequel j'ai inséré une "reference" ("ALX12345").
> Un TextBox6 dans lequel j'ai inséré une "Quantité" ("3")

Je voudrais à partir de cela :

Rechercher dans la colonne "B" , la cellule ayant pour valeur la référence ("ALX12345").

Si la référence existe, ajouter dans la cellule "Quantité" correspondante à cette reference la quantité ("3") du TextBox6 à la "quantité" déjà existante dans cette cellule

EX : Si la reference ("ALX12345"). est en ligne 7 et que la cellule Quantité ("C7") est déjà de "2" , en ajoutant la valeur de la TextBox6 ("3") , ==> Aprés opération, la valeur de la cellule C7 sera alors "5"

Et si la référence n'existe pas rajouter une ligne avec l'article est trier en ordre alphabetique, mais ça, je sais faire.

Merci de votre attention

à Bientôt

Windows XP Internet Explorer 7.0
A voir également:

2 réponses

pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 768
 
Salut,
Ceci devrait te convenir. A adapter bien sur

Dim i As Integer, numlign As Integer
numlign = Sheets("Feuil1").Range("B65536").End(xlUp).Row
With Sheets("Feuil1")
For i = 1 To numlign
If .Cells(i, 2).Value = TextBox4 Then
.Cells(i, 2).Offset(0, 1).Value = .Cells(i, 2).Offset(0, 1).Value + TextBox6
Exit For
End If
Next
End With


Edit : j'ai zappé la partie ou il faut ajouter la valeur du TextBox4. Je m'y mets tout de suite...
1
pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 768
 
Essaye comme ceci :

Dim i As Integer, numlign As Integer
numlign = Sheets("Feuil1").Range("B65536").End(xlUp).Row
With Sheets("Feuil1")
For i = 1 To numlign
If .Cells(i, 2).Value = TextBox4 Then
.Cells(i, 2).Offset(0, 1).Value = .Cells(i, 2).Offset(0, 1).Value + TextBox6
Exit For
End If
Next
If .Cells(i, 2).Value = "" Then
.Cells(i, 1).Value = TextBox2
.Cells(i, 2).Value = TextBox4
.Cells(i, 3).Value = TextBox6
End If
End With
0
lanxade Messages postés 32 Statut Membre
 
Bonjour PIJAKU,

En effet bien adapté ça marche

A bientôt
0