Condition dans un autre Userform
Bonjour à tous,
Je suis encore novice dans le VBA mais je tente d'effectuer un formulaire , le formulaire étant long g effectuer plusieurs bouton.
Maintenant j'aimerais savoir comment je peux faire pour établir une condition d'un élément sachant qu'ils ne se trouvent pas dans mon userform mais dans un autre.
Userform1 code
Private Sub UserForm_Initialize()
Me.Account_Grp.List = Array("A", "B", "C", "D", "e","f","g"
End Sub
Private Sub b_validation_Click()
'--- Contrôles
'-- Creation Customer
If Me.System = "" Then
MsgBox "Enter a System!"
Me.System.SetFocus
Exit Sub
End If
If Me.Account_Grp = "" Then
MsgBox "Enter a Account Group!"
Me.Account_Grp.SetFocus
Exit Sub
End If
If Me.Company_Code = "" Then
MsgBox "Enter a Company code!"
Me.Company_Code.SetFocus
Exit Sub
End If
If Me.Purchase_Org = "" Then
MsgBox "Enter a Sales Org!"
Me.Num_Cust.SetFocus
Exit Sub
End If
If Me.Distri = "" Then
MsgBox "Enter a Ditribution chanel!"
Me.Distri.SetFocus
Exit Sub
End If
If Me.Division = "" Then
MsgBox "Enter a Ditribution chanel!"
Me.Division.SetFocus
Exit Sub
End If
Me.Purchase_Org = Replace(Me.Purchase_Org, ".", ",")
If Me.Purchase_Org = "" Then
MsgBox "Enter a Sales Org!"
Me.Purchase_Org = ""
Me.Purchase_Org.SetFocus
Exit Sub
End If
'--- Positionnement dans la base
'--- ligne = Sheets("Vendor").[A65000].End(xlUp).Row + 1
'--- Transfert Formulaire dans Customer
Sheets("Customer").Cells(8, 4) = Me!System
Sheets("Customer").Cells(5, 10) = Me.Account_Grp
Sheets("Customer").Cells(18, 5) = Me.Num_Cust
Sheets("Customer").Cells(20, 5) = Me.Company_Code
Sheets("Customer").Cells(22, 5) = Me.Purchase_Org
Sheets("Customer").Cells(24, 5) = Me.Distri
Sheets("Customer").Cells(26, 5) = Me.Division
Sheets("Customer").Cells(19, 10) = Me.Custom
Sheets("Customer").Cells(21, 10) = Me.Code
Sheets("Customer").Cells(23, 10) = Me.Saleso
Sheets("Customer").Cells(25, 10) = Me.Distribution
Sheets("Customer").Cells(27, 10) = Me.Divise
End Sub
Sub nettoie()
Me.Num_Cust = ""
Me.Company_Code = ""
Me.Account_Grp = ""
Me.Purchase_Org = ""
Me.System = ""
Me.Distri = ""
Me.Division = ""
Me.Custom = ""
Me.Code = ""
Me.Saleso = ""
Me.Distribution = ""
Me.Divise = ""
End Sub
Private Sub b_fin_Click()
Unload Me
End Sub
Function OuiNon(valeur)
OuiNon = IIf(valeur, "Oui", "Non")
End Function
Private Sub b_imprime_Click()
Me.PrintForm
End Subet le Userform 2
Private Sub b_validation_Click()
'--- Transfert Form adress Info
Sheets("Customer").Cells(68, 5) = Me!trading
Sheets("Customer").Cells(70, 5) = Me.VAT
Sheets("Customer").Cells(75, 5) = Me.Country
Sheets("Customer").Cells(77, 5) = Me.bankk
Sheets("Customer").Cells(79, 5) = Me.banka
Sheets("Customer").Cells(81, 5) = Me.bankn
End Sub
Sub nettoie()
Me.trading = ""
Me.VAT = ""
Me.House = ""
Me.Country = ""
Me.bankk = ""
Me.banka = ""
Me.bankn = ""
End Sub
Private Sub b_fin_Click()
Unload Me
End Sub
Function OuiNon(valeur)
OuiNon = IIf(valeur, "Oui", "Non")
End Function
Private Sub b_imprime_Click()
Me.PrintForm
End SubJe voudrais rendre obligatoire le trading si le choix de l'utilisateur Account-GRP est A ou F.
Comment pourrais je faire cela car je ne vois pas comment passer d'un userform a un autre.
Merci
Salut,
Je ne pense pas que tu puises faire simplement le lien entre deux UserForm puisque le premier est logiquement refermé lorsque tu lances le second. Par contre si les informations du 1er UserForm sont à disposition sur ta feuille au moment où tu lances ton second UserForm, tu vas pouvoir en utiliser les valeurs.
Est-ce que l'on peut voir un bout de ton fichier ou bien c'est le même que lors de ton précédent fil
Cordialement.
Merci en 1er lieu
Oui c'est le même que mon 1er post c'est une amélioration car en réalisant un formulaire comportant plusieurs Userform je me suis rendu compte que je ne pourrais pas utiliser les données de mon 1er Userform.
Re,
Je n'ai pas compris si tu avais encore besoin d'aide ou non. Si oui, joins quand même ton fichier actuel avec tes deux UserForm.
Cordialement.
Voila j'aimerais pouvoir faire en sorte de rendre le trading soit obligatoire si le user choisie l'account ZV40 exemple
Mais seulement L'account groupe ne se trouve pas dans le même userform que le trading partner et je ne sais pas comment faire
Merci pour ton aide
Salut,
Tu n’as plus deux UserForm, mais 6 ! Afin que je ne perde pas des heures à essayer de comprendre ton système, peux-tu me décrire exactement les étapes qui mènent à ton problème ?
Par exemple tu me dis : « Après avoir saisi un nouveau client à l’aide du bouton XX, j’ai l’information YY dans la cellule A38 de la feuille UU par l’intermédiaire du TextBox ZZ. Lorsque je lance la macro reliée au bouton AA, je voudrais que le champ BB du UserForm DD soit obligatoire si la cellule A38 de la feuille UU indique YY».
A te relire.
Salut
Déjà merci pour ta patience.
Dans le 1er bouton tu as un champs obligatoire qui est "Account" J'aimerais que lorsque l'utilisateur choisis "ZC10 et ZT10".
De rendre le champs Trading partner obligatoire "le trading partner et dans le 3ème bouton.
Merci yvouille
Tel que demandé, merci d'être un peu plus précis, s'il te plait
Le 1er bouton ce nomme "f_Création" et le troisième bouton "Data".
Dans le 1er bouton "f_Création" tu as un champs obligatoire qui est "Account" J'aimerais que lorsque l'utilisateur choisis "ZC10 et ZT10".
De rendre le champs Trading partner obligatoire "le trading partner et dans le 3ème bouton "Data".
Re,
Tes explications sont toujours aussi peu précises, mais j’ai pu voir que lorsque tu cliques sur le bouton nommé « General Information», le UserForm « F_Création » s’ouvre et que tu peux choisir dans le champ nommé « Account » (soit dans le ComboBox «Account_Grp ») tes textes ZC10 ou ZT10.
Le texte indiqué dans ce ComboBox « Account_Grp » est reporté dans la cellule J5 de la feuille « Customer » et est à disposition pour coder un prochain UserForm.
Après quelques recherches, j’ai découvert que tu ouvres le UserForm « Data » par le bouton « CONTROL & PAYMENT ». J’ai donc modifié le code de ce UserForm « Data » afin que le champ « Trading partner » (soit le TextBox « trading ») soit obligatoire si la cellule J5 commence par ZC10 ou ZT10. Dans les autres cas, ce champ n’est pas nécessaire.
Cordialement.
NB : Pour rappel, le 27 juillet j'avais écrit :
Yvouille a écrit :Je ne pense pas que tu puises faire simplement le lien entre deux UserForm puisque le premier est logiquement refermé lorsque tu lances le second. Par contre si les informations du 1er UserForm sont à disposition sur ta feuille au moment où tu lances ton second UserForm, tu vas pouvoir en utiliser les valeurs.
Merci dsl de ne pas avoir été clair mais tu as compris ce que je voulais merci