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 Sub

et 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 Sub

Je 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

23customer-macro.xlsm (96.77 Ko)

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 Comment s'appellent les 1er et 3ème boutons ?

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

Rechercher des sujets similaires à "condition userform"