Passer d'un UserForm1 a un Userform2!?

N

Nico

Guest
Salut a tous!
J'ai une petite question concernant les Userform! Eh oui, encore!

Je realise une saisi d'un code produit grace a UserForm1, et je souhaiterais obtenir les infos lies a ce produit dans une autre fenetre ( UserForm2)! Comment faire?
Merci encore a ceux qui prendront de leur temps pour repondre a ma question.

Ci joint l'exemple.

Une derniere question pour la route! Lorsque je saisi la reference produit g0001235 qui n'est pas presente dans ma base, le programme bug, car il considere que la reference G0001235 est la meme! Comment palier a ce probleme?

Merci encore.
 

Pièces jointes

  • Book1bis.zip
    14 KB · Affichages: 26
  • Book1bis.zip
    14 KB · Affichages: 29
  • Book1bis.zip
    14 KB · Affichages: 28
J

J-F

Guest
Si je comprend bien ta question, tu voudrais pouvoir récupérer des variables ou autres informations d'un de tes user_form vers un autre. Dans ce cas, il te suffit de faire ceci:

tu as ton user_form1 avec label1

tu as ton user_form2 donc tu fera :
...
variable = user_form1.label1.Caption
...

en théorie pour récupérer le nom, mais rien de sur
essaye
dont

bonne chance
 
R

Robert

Guest
Bonjour Nico
En premier lieu la réponse à ta deuxième question...
Soit tu passe la saisie en Upper Case à l'aide de UCase() soit tu fait ton teste avec UCase(...)
If Application.CountIf(Range("1:1"), UCase(Me.TextBox1.Value)) = 0 Then
...


Pour accéder à la seconde UserForm2 spécifie que c'est sur cette form que tu veux travailler:
With UserForm2
.TextBox2.Value = Cells(2, compteur).Value
.TextBox3.Value = Cells(3, compteur).Value
.TextBox4.Value = Cells(4, compteur).Value
.TextBox5.Value = Cells(5, compteur).Value
.TextBox6.Value = Cells(6, compteur).Value

'cadence

.TextBox7.Value = Cells(2, compteur + 3).Value
'cout d'un produit
If TextBox1.Value = "" Then
.TextBox8.Value = ""
Else
.TextBox8.Value = ((Cells(2, compteur + 1).Value * Cells(2, compteur + 2)) + (Cells(3, compteur + 1).Value * Cells(3, compteur + 2)) + (Cells(4, compteur + 1).Value * Cells(4, compteur + 2)) + (Cells(5, compteur + 1).Value * Cells(5, compteur + 2))) + (Cells(30, 1) / Cells(2, compteur + 3))
End If
End With

En esperant avoir répondu à ta demande
@+ Robert
 

Discussions similaires