TextBox recherche valeur dans colonne
Résolu
lanxade
Messages postés
32
Statut
Membre
-
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
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:
- TextBox recherche valeur dans colonne
- Déplacer colonne excel - Guide
- Trier colonne excel - Guide
- Recherche automatique des chaînes ne fonctionne pas - Guide
- Colonne word - Guide
- Formule somme excel colonne - Guide
2 réponses
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...
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...
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
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