Créer une classe en vb pour recuperer le contenu d'un userform
sabrine1311bb
-
Zoul67 Messages postés 1959 Date d'inscription Statut Membre Dernière intervention -
Zoul67 Messages postés 1959 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je souhaite remplir les cellules de plusieurs feuilles excel à partir d'un formulaire que j'ai crée.
Le probléme est que je dois d'abord utiliser ces champs partout dans le code et non pas que dans le userform.
Je n'arrive pa à creer une classe en vb pour récuperer le contenu de tous les controls dans des variables et pouvoir ensuite les utiliser pour remplir les differentes cellules.
j'ai commencé à créer une classe, mais je ne sais pas comment utiliser les propriétes Let et Get ?
Et si on doit declarer le contenu des controls dansces propriétes??
Classe Variables_Formulaire
'---------------------
Dim Business_Assurance_RESP As Variant
Dim BnB_Date As Variant
Dim Date_Ouverture As Variant
Dim Strategic_Deal As Variant
Dim IC_Name As Variant
Dim Process_Step As Variant
Dim Decision As Variant
Dim Date_Submission As Variant
Dim Other_Region As Variant
Dim Lead_Region As Variant
Dim contract_Lengh As Variant
Dim G_Margin As Variant
Dim TCV_EURO As Variant
Dim RiskL As Variant
Dim NSiebel As Variant
Dim Scope_Deal As Variant
Dim Categorie_Deal As Variant
Dim Customerr As Variant
'--------------------------
'
' Business_Assurance_RESP
'
'--------------------------
Public Property Get Resp() As Variant
nom de mon control dans user form = Business_Assurance_RESP '( cest bien ce qu'il faut mettre dans get ??)
End Property
Public Property Let Business_Assurance_RESP(Value As String)
Business_Assurance_RESP = Value
End Property
'
Merci de votre aide
Je souhaite remplir les cellules de plusieurs feuilles excel à partir d'un formulaire que j'ai crée.
Le probléme est que je dois d'abord utiliser ces champs partout dans le code et non pas que dans le userform.
Je n'arrive pa à creer une classe en vb pour récuperer le contenu de tous les controls dans des variables et pouvoir ensuite les utiliser pour remplir les differentes cellules.
j'ai commencé à créer une classe, mais je ne sais pas comment utiliser les propriétes Let et Get ?
Et si on doit declarer le contenu des controls dansces propriétes??
Classe Variables_Formulaire
'---------------------
Dim Business_Assurance_RESP As Variant
Dim BnB_Date As Variant
Dim Date_Ouverture As Variant
Dim Strategic_Deal As Variant
Dim IC_Name As Variant
Dim Process_Step As Variant
Dim Decision As Variant
Dim Date_Submission As Variant
Dim Other_Region As Variant
Dim Lead_Region As Variant
Dim contract_Lengh As Variant
Dim G_Margin As Variant
Dim TCV_EURO As Variant
Dim RiskL As Variant
Dim NSiebel As Variant
Dim Scope_Deal As Variant
Dim Categorie_Deal As Variant
Dim Customerr As Variant
'--------------------------
'
' Business_Assurance_RESP
'
'--------------------------
Public Property Get Resp() As Variant
nom de mon control dans user form = Business_Assurance_RESP '( cest bien ce qu'il faut mettre dans get ??)
End Property
Public Property Let Business_Assurance_RESP(Value As String)
Business_Assurance_RESP = Value
End Property
'
Merci de votre aide
A voir également:
- Créer une classe en vb pour recuperer le contenu d'un userform
- Créer un compte google - Guide
- Créer un lien pour partager des photos - Guide
- Comment créer un groupe whatsapp - Guide
- Créer un compte gmail - Guide
- Comment recuperer un message supprimé sur whatsapp - Guide
3 réponses
Bonjour,
Exemple :
Un Userform avec 1 textbox (TextBox1) et un bouton (CommandButton1).
Dans le module de l'userform ce code :
Dans un module standard :
Attention également à ne pas typer toutes vos variables As Variant, à moins que cela ne vous soit indispensable.
Je souhaite remplir les cellules de plusieurs feuilles excel à partir d'un formulaire que j'ai crée.Pas besoin d'un module de classe si ce n'est que ça.
Le probléme est que je dois d'abord utiliser ces champs partout dans le code et non pas que dans le userform.Si le contenu de vos champs, stockés dans des variables, doit être utilisé dans d'autres Modules (standard, modules de feuille etc.), vous pouvez les déclarer comme étant des variables publiques, en tête d'un module standard. Elles seront ainsi lisibles depuis tout le projet VBA.
Exemple :
Un Userform avec 1 textbox (TextBox1) et un bouton (CommandButton1).
Dans le module de l'userform ce code :
Private Sub CommandButton1_Click() If TextBox1 = "" Then MaVar = "Vous n'avez rien écrit dans le TextBox" Else MaVar = TextBox1.Value End If Call Message End Sub
Dans un module standard :
Option Explicit Public MaVar As String Public Sub Message() MsgBox MaVar End Sub
Attention également à ne pas typer toutes vos variables As Variant, à moins que cela ne vous soit indispensable.
voici le code (mis à jour)
---------------------
' Classe Variables_Formulaire
'---------------------
Dim V_Business_Assurance_RESP As Variant
Dim V_BnB_Date As Variant
Dim V_Date_Ouverture As Variant
Dim V_Strategic_Deal As Variant
Dim V_IC_Name As Variant
Dim V_Process_Step As Variant
Dim V_Decision As Variant
Dim V_Date_Submission As Variant
Dim V_Other_Region As Variant
Dim V_Lead_Region As Variant
Dim V_contract_Lengh As Variant
Dim V_G_Margin As Variant
Dim V_TCV_EURO As Variant
Dim V_RiskL As Variant
Dim V_NSiebel As Variant
Dim V_Scope_Deal As Variant
Dim V_Categorie_Deal As Variant
Dim V_Customerr As Variant
'--------------------------
'
' Business_Assurance_RESP
'
'--------------------------
Public Property Get Business_Assurance_RESP() As Variant
Business_Assurance_RESP = V_Business_Assurance_RESP
End Property
Public Property Let Business_Assurance_RESP(ByVal vNewValue As Variant)
V_Business_Assurance_RESPl = vNewValue
End Property
'--------------------------
'
'Strategic_Deal
'
'--------------------------
Public Property Get StrategicDeal() As Integer
StrategicDeal = V_Strategic_Deal
End Property
Public Property Let Strategic_Deal(ByVal vNewValue As Variant)
V_Strategic_Deal = vNewValue
End Property
'-------------------------
'
'BnB_Date
'
'--------------------------
Public Property Get BnB_Date() As Integer
BnB_Date = V_BnB_Date
End Property
Public Property Let BnB_Date(ByVal vNewValue As Variant)
V_BnB_Date = vNewValue
End Property
'-------------------------
'
'Date_Ouverture
'
'--------------------------
Public Property Get Date_Ouverture() As Integer
Date_Ouverture = V_Date_Ouverture
End Property
Public Property Let Date_Ouverture(ByVal vNewValue As Variant)
V_BnB_Date = vNewValue
End Property
'-------------------------
'
'IC_Name
'
'--------------------------
Public Property Get IC_Name() As Integer
IC_Name = V_IC_Name
End Property
Public Property Let IC_Name(ByVal vNewValue As Variant)
V_IC_Name = vNewValue
End Property
'-------------------------
'
'Process_Step
'
'--------------------------
Public Property Get Process_Step() As Integer
Process_Step = V_Process_Step
End Property
Public Property Let Process_Step(ByVal vNewValue As Variant)
V_Process_Step = vNewValue
End Property
'-------------------------
'
'Decision
'
'--------------------------
Public Property Get Decision() As Integer
Decision = V_Decision
End Property
Public Property Let Decision(ByVal vNewValue As Variant)
V_Decision = vNewValue
End Property
'-------------------------
'
'Date_Submission
'
'--------------------------
Public Property Get Date_Submission() As Integer
Date_Submission = V_Date_Submission
End Property
Public Property Let Date_Submission(ByVal vNewValue As Variant)
V_Date_Submission = vNewValue
End Property
'-------------------------
'
'Other_Region
'
'--------------------------
Public Property Get Other_Region() As Integer
Other_Region = V_Other_Region
End Property
Public Property Let Other_Region(ByVal vNewValue As Variant)
V_Other_Region = vNewValue
End Property
'-------------------------
'
'Lead_Region
'
'--------------------------
Public Property Get Lead_Region() As Integer
Lead_Region = V_Lead_Region
End Property
Public Property Let Lead_Region(ByVal vNewValue As Variant)
V_Lead_Region = vNewValue
End Property
'-------------------------
'
'contract_Lengh
'
'--------------------------
Public Property Get contract_Lengh() As Integer
Other_Region = V_contract_Lengh
End Property
Public Property Let contract_Lengh(ByVal vNewValue As Variant)
V_Other_Region = vNewValue
End Property
'-------------------------
'
'G_Margin
'
'--------------------------
Public Property Get G_Margin() As Integer
G_Margin = V_G_Margin
End Property
Public Property Let G_Margin(ByVal vNewValue As Variant)
V_G_Margin = vNewValue
End Property
'-------------------------
'
'TCV_EURO
'
'--------------------------
Public Property Get TCV_EURO() As Integer
TCV_EURO = V_TCV_EURO
End Property
Public Property Let TCV_EURO(ByVal vNewValue As Variant)
V_TCV_EURO = vNewValue
End Property
'-------------------------
'
'RiskL
'
'--------------------------
Public Property Get RiskL() As Integer
RiskL = V_RiskL
End Property
Public Property Let RiskL(ByVal vNewValue As Variant)
V_RiskL = vNewValue
End Property
'-------------------------
'
'NSiebel
'
'--------------------------
Public Property Get NSiebel() As Integer
NSiebel = V_NSiebel
End Property
Public Property Let NSiebel(ByVal vNewValue As Variant)
V_NSiebel = vNewValue
End Property
'-------------------------
'
'Scope_Deal
'
'--------------------------
Public Property Get Scope_Deal() As Integer
Scope_Deal = V_Scope_Deal
End Property
Public Property Let Scope_Deal(ByVal vNewValue As Variant)
V_Scope_Deal = vNewValue
End Property
'-------------------------
'
'Categorie_Deal
'
'--------------------------
Public Property Get Categorie_Deal() As Integer
Categorie_Deal = V_Categorie_Deal
End Property
Public Property Let Categorie_Deal(ByVal vNewValue As Variant)
V_Categorie_Deal = vNewValue
End Property
'-------------------------
'
'Customerr
'
'--------------------------
Public Property Get Customerr() As Integer
Customerr = V_Customerr
End Property
Public Property Let Customerr(ByVal vNewValue As Variant)
V_Customerr = vNewValue
End Property
'--------------------------
'
' methode Remplir
'
'--------------------------
Sub Remplir(BnB_Date)
MsgBox (BnB_Date)
End Sub
'--------------------------
'
' methode Effacer
'
'--------------------------
Sub regarder()
MsgBox (Strategic_Deal)
End Sub
'La fonction de recuperation du contenu de control utilisée avant
'mais avec le "Me" faisant referance au userform je ne peux pas utiliser les variables dans tts les modules
V_Business_Assurance_RESP = Me.Resp.Value
V_BnB_Date = Me.TextBox3.Value
V_Date_Ouverture = Me.TextBox4.Value
V_Strategic_Deal = Me.StrategicDeal.Value
V_IC_Name = Me.IC.Value
V_Process_Step = Me.ComboBox4.Value
V_Decision = Me.Decision.Value
V_Date_Submission = Me.DateRep.Value
V_Other_Region = Me.OtherReg.Value
V_Lead_Region = Me.ComboBox4.Value
V_contract_Lengh = Me.CONTRACT.Value
V_G_Margin = Me.GM.Value
V_TCV_EURO = Me.TCV.Value
V_RiskL = Me.RL.Value
V_NSiebel = Me.Siebel.Value
V_Scope_Deal = Me.Scope.Value
V_Categorie_Deal = Me.CatDeal.Value
V_Customerr = Me.cus.Value
MsgBox "" & Customerr
MsgBox "" & NSiebel
Merci de votre aide
---------------------
' Classe Variables_Formulaire
'---------------------
Dim V_Business_Assurance_RESP As Variant
Dim V_BnB_Date As Variant
Dim V_Date_Ouverture As Variant
Dim V_Strategic_Deal As Variant
Dim V_IC_Name As Variant
Dim V_Process_Step As Variant
Dim V_Decision As Variant
Dim V_Date_Submission As Variant
Dim V_Other_Region As Variant
Dim V_Lead_Region As Variant
Dim V_contract_Lengh As Variant
Dim V_G_Margin As Variant
Dim V_TCV_EURO As Variant
Dim V_RiskL As Variant
Dim V_NSiebel As Variant
Dim V_Scope_Deal As Variant
Dim V_Categorie_Deal As Variant
Dim V_Customerr As Variant
'--------------------------
'
' Business_Assurance_RESP
'
'--------------------------
Public Property Get Business_Assurance_RESP() As Variant
Business_Assurance_RESP = V_Business_Assurance_RESP
End Property
Public Property Let Business_Assurance_RESP(ByVal vNewValue As Variant)
V_Business_Assurance_RESPl = vNewValue
End Property
'--------------------------
'
'Strategic_Deal
'
'--------------------------
Public Property Get StrategicDeal() As Integer
StrategicDeal = V_Strategic_Deal
End Property
Public Property Let Strategic_Deal(ByVal vNewValue As Variant)
V_Strategic_Deal = vNewValue
End Property
'-------------------------
'
'BnB_Date
'
'--------------------------
Public Property Get BnB_Date() As Integer
BnB_Date = V_BnB_Date
End Property
Public Property Let BnB_Date(ByVal vNewValue As Variant)
V_BnB_Date = vNewValue
End Property
'-------------------------
'
'Date_Ouverture
'
'--------------------------
Public Property Get Date_Ouverture() As Integer
Date_Ouverture = V_Date_Ouverture
End Property
Public Property Let Date_Ouverture(ByVal vNewValue As Variant)
V_BnB_Date = vNewValue
End Property
'-------------------------
'
'IC_Name
'
'--------------------------
Public Property Get IC_Name() As Integer
IC_Name = V_IC_Name
End Property
Public Property Let IC_Name(ByVal vNewValue As Variant)
V_IC_Name = vNewValue
End Property
'-------------------------
'
'Process_Step
'
'--------------------------
Public Property Get Process_Step() As Integer
Process_Step = V_Process_Step
End Property
Public Property Let Process_Step(ByVal vNewValue As Variant)
V_Process_Step = vNewValue
End Property
'-------------------------
'
'Decision
'
'--------------------------
Public Property Get Decision() As Integer
Decision = V_Decision
End Property
Public Property Let Decision(ByVal vNewValue As Variant)
V_Decision = vNewValue
End Property
'-------------------------
'
'Date_Submission
'
'--------------------------
Public Property Get Date_Submission() As Integer
Date_Submission = V_Date_Submission
End Property
Public Property Let Date_Submission(ByVal vNewValue As Variant)
V_Date_Submission = vNewValue
End Property
'-------------------------
'
'Other_Region
'
'--------------------------
Public Property Get Other_Region() As Integer
Other_Region = V_Other_Region
End Property
Public Property Let Other_Region(ByVal vNewValue As Variant)
V_Other_Region = vNewValue
End Property
'-------------------------
'
'Lead_Region
'
'--------------------------
Public Property Get Lead_Region() As Integer
Lead_Region = V_Lead_Region
End Property
Public Property Let Lead_Region(ByVal vNewValue As Variant)
V_Lead_Region = vNewValue
End Property
'-------------------------
'
'contract_Lengh
'
'--------------------------
Public Property Get contract_Lengh() As Integer
Other_Region = V_contract_Lengh
End Property
Public Property Let contract_Lengh(ByVal vNewValue As Variant)
V_Other_Region = vNewValue
End Property
'-------------------------
'
'G_Margin
'
'--------------------------
Public Property Get G_Margin() As Integer
G_Margin = V_G_Margin
End Property
Public Property Let G_Margin(ByVal vNewValue As Variant)
V_G_Margin = vNewValue
End Property
'-------------------------
'
'TCV_EURO
'
'--------------------------
Public Property Get TCV_EURO() As Integer
TCV_EURO = V_TCV_EURO
End Property
Public Property Let TCV_EURO(ByVal vNewValue As Variant)
V_TCV_EURO = vNewValue
End Property
'-------------------------
'
'RiskL
'
'--------------------------
Public Property Get RiskL() As Integer
RiskL = V_RiskL
End Property
Public Property Let RiskL(ByVal vNewValue As Variant)
V_RiskL = vNewValue
End Property
'-------------------------
'
'NSiebel
'
'--------------------------
Public Property Get NSiebel() As Integer
NSiebel = V_NSiebel
End Property
Public Property Let NSiebel(ByVal vNewValue As Variant)
V_NSiebel = vNewValue
End Property
'-------------------------
'
'Scope_Deal
'
'--------------------------
Public Property Get Scope_Deal() As Integer
Scope_Deal = V_Scope_Deal
End Property
Public Property Let Scope_Deal(ByVal vNewValue As Variant)
V_Scope_Deal = vNewValue
End Property
'-------------------------
'
'Categorie_Deal
'
'--------------------------
Public Property Get Categorie_Deal() As Integer
Categorie_Deal = V_Categorie_Deal
End Property
Public Property Let Categorie_Deal(ByVal vNewValue As Variant)
V_Categorie_Deal = vNewValue
End Property
'-------------------------
'
'Customerr
'
'--------------------------
Public Property Get Customerr() As Integer
Customerr = V_Customerr
End Property
Public Property Let Customerr(ByVal vNewValue As Variant)
V_Customerr = vNewValue
End Property
'--------------------------
'
' methode Remplir
'
'--------------------------
Sub Remplir(BnB_Date)
MsgBox (BnB_Date)
End Sub
'--------------------------
'
' methode Effacer
'
'--------------------------
Sub regarder()
MsgBox (Strategic_Deal)
End Sub
'La fonction de recuperation du contenu de control utilisée avant
'mais avec le "Me" faisant referance au userform je ne peux pas utiliser les variables dans tts les modules
V_Business_Assurance_RESP = Me.Resp.Value
V_BnB_Date = Me.TextBox3.Value
V_Date_Ouverture = Me.TextBox4.Value
V_Strategic_Deal = Me.StrategicDeal.Value
V_IC_Name = Me.IC.Value
V_Process_Step = Me.ComboBox4.Value
V_Decision = Me.Decision.Value
V_Date_Submission = Me.DateRep.Value
V_Other_Region = Me.OtherReg.Value
V_Lead_Region = Me.ComboBox4.Value
V_contract_Lengh = Me.CONTRACT.Value
V_G_Margin = Me.GM.Value
V_TCV_EURO = Me.TCV.Value
V_RiskL = Me.RL.Value
V_NSiebel = Me.Siebel.Value
V_Scope_Deal = Me.Scope.Value
V_Categorie_Deal = Me.CatDeal.Value
V_Customerr = Me.cus.Value
MsgBox "" & Customerr
MsgBox "" & NSiebel
Merci de votre aide
Merci infiniment pour ton aide,
mais le pb c'est que meme si je declare mes variables en public et ma fonction de recup en public aussi si je fais un appel de ma fonction en dehors du module dans lequel est declarée, cela me renvoie une erreur de complilation sub ou function non definie!
''decalaration de mes variable en haut "
"la fonction RECUP Appelée dans le mme module ca marche mais en dehorsn'est pas definie"
Cordialement,
sabrine
mais le pb c'est que meme si je declare mes variables en public et ma fonction de recup en public aussi si je fais un appel de ma fonction en dehors du module dans lequel est declarée, cela me renvoie une erreur de complilation sub ou function non definie!
''decalaration de mes variable en haut "
Public Customerr As Variant, RiskL As Variant, TCV_EURO As Variant, G_Margin As Variant, NSiebel As Variant, contract_Lengh As Variant Public Lead_Region As Variant, Other_Region As Variant, Date_Submission As Variant, Decision_GO As Variant, Process_Step As Variant Public IC_Name As Variant, Categorie_Deal As Variant, Strategic_Deal As Variant, Scope_Deal As Variant, Date_Ouverture As Variant, BnB_Date As Variant, Business_Assurance_RESP As Variant
"la fonction RECUP Appelée dans le mme module ca marche mais en dehorsn'est pas definie"
Private Sub CommandButton9_Click() Call RECUP End Sub Public Sub RECUP() Business_Assurance_RESP = Me.Resp.Value BnB_Date = Me.TextBox3.Value Date_Ouverture = Me.TextBox4.Value Strategic_Deal = Me.StrategicDeal.Value IC_Name = Me.IC.Value Process_Step = Me.ComboBox4.Value Decision = Me.Decision.Value Date_Submission = Me.DateRep.Value Other_Region = Me.OtherReg.Value Lead_Region = Me.ComboBox4.Value contract_Lengh = Me.CONTRACT.Value G_Margin = Me.GM.Value TCV_EURO = Me.TCV.Value RiskL = Me.RL.Value NSiebel = Me.Siebel.Value Scope_Deal = Me.Scope.Value Categorie_Deal = Me.CatDeal.Value Customerr = Me.cus.Value MsgBox "" & Customerr MsgBox "" & NSiebel 'calcul des variables auto 'managername = manager(IC_Name) End Sub
Cordialement,
sabrine
Bonjour,
Je pense que tu as de bonnes connaissances dans les langages orientés objet. Mais...
En VBA Excel, il y a moyen de faire des choses simplement pour couvrir des besoins simples (d'où pijaku : "Pas besoin d'un module de classe si ce n'est que ça").
Or, remplir des cellules à partir de saisies dans un UserForm semble assez basique.
Déjà, je ne comprends pas l'intérêt des variables intermédiaires entre les contrôles du UserForm et les cellules à remplir.
Peux-tu réexpliquer ton besoin ou transmettre ton fichier via https://www.cjoint.com/ ?
A+
Je pense que tu as de bonnes connaissances dans les langages orientés objet. Mais...
En VBA Excel, il y a moyen de faire des choses simplement pour couvrir des besoins simples (d'où pijaku : "Pas besoin d'un module de classe si ce n'est que ça").
Or, remplir des cellules à partir de saisies dans un UserForm semble assez basique.
Déjà, je ne comprends pas l'intérêt des variables intermédiaires entre les contrôles du UserForm et les cellules à remplir.
Peux-tu réexpliquer ton besoin ou transmettre ton fichier via https://www.cjoint.com/ ?
A+
Le problème ne vient pas de là.
Le problème est que Me, se référant à ton UserForm, n'est pas référencé dans ton Module standard. Par conséquent inconnu...
Le "truc" c'est de passer ton UserForm en paramètre de ta fonction.
Du coup essaye ceci :
dans ton module standard :
Dans le module de l'userform :
Bis Repetita : Ne déclare pas toutes tes variables As Variant...
EDIT: j'avais oublié d'enlever les "Me"...
Re-EDIT : Les codes sont plus jolis dans ce forum lorsqu'ils sont entourés des balises prévues à cet effet...
Le problème est que Me, se référant à ton UserForm, n'est pas référencé dans ton Module standard. Par conséquent inconnu...
Le "truc" c'est de passer ton UserForm en paramètre de ta fonction.
Du coup essaye ceci :
dans ton module standard :
Public Customerr As Variant, RiskL As Variant, TCV_EURO As Variant, G_Margin As Variant, NSiebel As Variant, contract_Lengh As Variant Public Lead_Region As Variant, Other_Region As Variant, Date_Submission As Variant, Decision_GO As Variant, Process_Step As Variant Public IC_Name As Variant, Categorie_Deal As Variant, Strategic_Deal As Variant, Scope_Deal As Variant, Date_Ouverture As Variant Public BnB_Date As Variant, Business_Assurance_RESP As Variant Public Sub RECUP(UF As UserForm) With UF Business_Assurance_RESP = .resp.Value BnB_Date = .TextBox3.Value Date_Ouverture = .TextBox4.Value Strategic_Deal = .StrategicDeal.Value IC_Name = .IC.Value Process_Step = .ComboBox4.Value Decision = .Decision.Value Date_Submission = .DateRep.Value Other_Region = .OtherReg.Value Lead_Region = .ComboBox4.Value contract_Lengh = .CONTRACT.Value G_Margin = .GM.Value TCV_EURO = .TCV.Value RiskL = .RL.Value NSiebel = .Siebel.Value ' Scope_Deal = .Scope.Value Categorie_Deal = .CatDeal.Value Customerr = .cus.Value MsgBox "" & Customerr MsgBox "" & NSiebel End With 'calcul des variables auto 'managername = manager(IC_Name) End Sub
Dans le module de l'userform :
Private Sub CommandButton9_Click() Dim USF As UserForm Set USF = Me RECUP USF End Sub
Bis Repetita : Ne déclare pas toutes tes variables As Variant...
EDIT: j'avais oublié d'enlever les "Me"...
Re-EDIT : Les codes sont plus jolis dans ce forum lorsqu'ils sont entourés des balises prévues à cet effet...
Merci beaucoup de votre aide
j'ai testé cela fonctionne beaucoup mieux!
cependant pour faire appel a ma fonction recup a partir d'un autre module (exemple le module qui active mon userform)
cela m'affiche erreur (utilisation incorrect du mot clé .ME)
donc le probleme persiste, je ne pourrai pas utiliser cette fonction dans tt mon projet vb
j'ai testé cela fonctionne beaucoup mieux!
cependant pour faire appel a ma fonction recup a partir d'un autre module (exemple le module qui active mon userform)
Sub Formulaire() ' ' Formulaire Macro ' Afficher le Formulaire UserForm3.Show vbModeless Dim USF As UserForm Set USF = Me RECUP USF ' Call RECUP 'ActiveWorkbook.Save 'Windows("Francebidtracking_Test.xlsm").Activate 'MsgBox "Veuillez cliquer sur NewBid avant !" End Sub
cela m'affiche erreur (utilisation incorrect du mot clé .ME)
donc le probleme persiste, je ne pourrai pas utiliser cette fonction dans tt mon projet vb
En haut et à droite du cadre dans lequel tu écris, il y a les options de mise en forme.
Sélectionne le code avec la souris puis clique sur la flèche pointant en bas et sélectionne basic.
Recup, comme pijaku a écrit le code va coller les informations du UserForm dans les variables. Je ne suis pas sûr que tu fasses les imbrications correctement.
Sélectionne le code avec la souris puis clique sur la flèche pointant en bas et sélectionne basic.
Recup, comme pijaku a écrit le code va coller les informations du UserForm dans les variables. Je ne suis pas sûr que tu fasses les imbrications correctement.