VBA excel récupération de donnée de userform.
Fermé
japlo
Messages postés
39
Date d'inscription
jeudi 24 janvier 2008
Statut
Membre
Dernière intervention
15 février 2011
-
10 févr. 2011 à 16:47
japlo Messages postés 39 Date d'inscription jeudi 24 janvier 2008 Statut Membre Dernière intervention 15 février 2011 - 12 févr. 2011 à 15:45
japlo Messages postés 39 Date d'inscription jeudi 24 janvier 2008 Statut Membre Dernière intervention 15 février 2011 - 12 févr. 2011 à 15:45
A voir également:
- VBA excel récupération de donnée de userform.
- Liste déroulante excel - Guide
- Si et excel - Guide
- Aller à la ligne excel - Guide
- Convertisseur récupération de texte - Guide
- Word et excel gratuit - Guide
7 réponses
Bonjour,
Créer un nouveau module
Déclarer des variables correspondant aux champs que vous désirez manipuler :
ex.:
Public MaVariable As String
Cette variable sera accessible dans tout le projet, Forms, Sheets, Module.
Cdt
Info
Créer un nouveau module
Déclarer des variables correspondant aux champs que vous désirez manipuler :
ex.:
Public MaVariable As String
Cette variable sera accessible dans tout le projet, Forms, Sheets, Module.
Cdt
Info
japlo
Messages postés
39
Date d'inscription
jeudi 24 janvier 2008
Statut
Membre
Dernière intervention
15 février 2011
2
11 févr. 2011 à 12:10
11 févr. 2011 à 12:10
Slt,
Merci pour l'info je creuse mais je ne trouve pas vraiment il me faut donc dans un premier temps trouver comment activer l'onglet désiré.
Donc dans un module il faudrait que je mette
1 pour janvier
2 pour fevrier
etc...
Public MaVariable As String
Range("q3").Value = 1
Worksheets("Jan").Activate
Range("q3").Value = 2
Worksheets("Fev").Activate
etc etc
comment activer ce module pour qu'il s'exécute ?
Cdt
Merci pour l'info je creuse mais je ne trouve pas vraiment il me faut donc dans un premier temps trouver comment activer l'onglet désiré.
Donc dans un module il faudrait que je mette
1 pour janvier
2 pour fevrier
etc...
Public MaVariable As String
Range("q3").Value = 1
Worksheets("Jan").Activate
Range("q3").Value = 2
Worksheets("Fev").Activate
etc etc
comment activer ce module pour qu'il s'exécute ?
Cdt
Bonjour,
Ex.:
Creer un module [ Module1 ]
Copier ceci :
Creer un autre module [ Module2 ]
Copier ceci :
Creer un autre module [ Module3 ]
Copier ceci :
Lancer la macro [ MAJ_Variable ] et ensuite lancer la macro [ AfficheVariable ].
Donc vous verrez que vous pouvez adresser la variable
[ MaVariable ] de n'importe quel endroit du projet,
même à partir d'un UserForm.
Cdt
Info
Ex.:
Creer un module [ Module1 ]
Copier ceci :
Option Explicit Public MaVariable As String
Creer un autre module [ Module2 ]
Copier ceci :
Option Explicit Sub MAJ_Variable() MaVariable = "Info" End Sub
Creer un autre module [ Module3 ]
Copier ceci :
Option Explicit Sub AfficheVariable() MsgBox MaVariable End Sub
Lancer la macro [ MAJ_Variable ] et ensuite lancer la macro [ AfficheVariable ].
Donc vous verrez que vous pouvez adresser la variable
[ MaVariable ] de n'importe quel endroit du projet,
même à partir d'un UserForm.
Cdt
Info
japlo
Messages postés
39
Date d'inscription
jeudi 24 janvier 2008
Statut
Membre
Dernière intervention
15 février 2011
2
12 févr. 2011 à 12:27
12 févr. 2011 à 12:27
J'ai enfin saisie je pense
Private Sub CommandButton1_Click()
fin = 0
If Me.CheckBox1 = False And Me.CheckBox2 = False And Me.CheckBox3 = False And Me.CheckBox4 = False And Me.CheckBox5 = False And Me.CheckBox6 = False And Me.CheckBox7 = False And Me.CheckBox8 = False And Me.CheckBox8 = False And Me.CheckBox9 = False And Me.CheckBox10 = False And Me.CheckBox11 = False Then
MsgBox "Vous devez sélectionner au moins un véhicule avant de valider...", vbInformation, "Merci de suivre les instructions..."
fin = 1
Cancel = True
Exit Sub
End If
Unload Me
MAJ_Variable
AfficheVariable
End Sub
Maintenant j'essaye donc douvrir l'onglet désiré par rapport au résultat obtenue dans une cellule
Sub MAJ_Variable()
If Sheets("Intervention").[q3].Value = 1 Then
Sheets("Jan").Select
If Sheets("Intervention").[q3].Value = 2 Then
Sheets("Fev").Select
End If
End If
End Sub
Private Sub CommandButton1_Click()
fin = 0
If Me.CheckBox1 = False And Me.CheckBox2 = False And Me.CheckBox3 = False And Me.CheckBox4 = False And Me.CheckBox5 = False And Me.CheckBox6 = False And Me.CheckBox7 = False And Me.CheckBox8 = False And Me.CheckBox8 = False And Me.CheckBox9 = False And Me.CheckBox10 = False And Me.CheckBox11 = False Then
MsgBox "Vous devez sélectionner au moins un véhicule avant de valider...", vbInformation, "Merci de suivre les instructions..."
fin = 1
Cancel = True
Exit Sub
End If
Unload Me
MAJ_Variable
AfficheVariable
End Sub
Maintenant j'essaye donc douvrir l'onglet désiré par rapport au résultat obtenue dans une cellule
Sub MAJ_Variable()
If Sheets("Intervention").[q3].Value = 1 Then
Sheets("Jan").Select
If Sheets("Intervention").[q3].Value = 2 Then
Sheets("Fev").Select
End If
End If
End Sub
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
lermite222
Messages postés
8724
Date d'inscription
dimanche 8 avril 2007
Statut
Contributeur
Dernière intervention
22 janvier 2020
1 190
Modifié par lermite222 le 12/02/2011 à 14:56
Modifié par lermite222 le 12/02/2011 à 14:56
Bonjour,
Petite mise au point :D
A+
L'expérience instruit plus sûrement que le conseil. (André Gide)
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
NOTE : Je ne répond pas aux MP pour les questions techniques.
Ça doit se passer sur le forum pour que tous puisse y participer ou en profiter.
Petite mise au point :D
Private Sub CommandButton1_Click() Dim Mois Mois = Array(" ", "Jan", "Fév", "Mar", "Avr", "Mai", "Jui", "Jul", "Aou", "Sep", "Oct", "Nov", "Déc") 'fin = 0 'Sert à rien If Not (CheckBox1 And CheckBox2 And CheckBox3 And CheckBox4 And CheckBox5 And CheckBox6 _ And CheckBox7 And CheckBox8 And CheckBox9 And CheckBox10 And CheckBox11) Then MsgBox "Vous devez sélectionner au moins un véhicule avant de valider...", vbInformation, "Merci de suivre les instructions..." 'fin = 1 'sert à rien 'Cancel = True'sert à rien Unload Me Else 'MAJ_Variable 'Pas besoin d'aller ailleur Sheets(Mois(Sheets("Intervention").[q3].Value)).Select 'AfficheVariable 'Là faut voir ce que tu veux afficher End If End Sub
A+
L'expérience instruit plus sûrement que le conseil. (André Gide)
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
NOTE : Je ne répond pas aux MP pour les questions techniques.
Ça doit se passer sur le forum pour que tous puisse y participer ou en profiter.
lermite222
Messages postés
8724
Date d'inscription
dimanche 8 avril 2007
Statut
Contributeur
Dernière intervention
22 janvier 2020
1 190
12 févr. 2011 à 14:58
12 févr. 2011 à 14:58
A titre didactique, autre facon de faire
A+
Private Sub CommOrButton1_Click() Dim Mois Mois = Array(" ", "Jan", "Fév", "Mar", "Avr", "Mai", "Jui", "Jul", "Aou", "Sep", "Oct", "Nov", "Déc") 'fin = 0 'Sert à rien If CheckBox1 Or CheckBox2 Or CheckBox3 Or CheckBox4 Or CheckBox5 Or CheckBox6 _ Or CheckBox7 Or CheckBox8 Or CheckBox8 Or CheckBox9 Or CheckBox10 Or CheckBox11 Then 'MAJ_Variable 'Pas besoin d'aller ailleur Sheets(Mois(Sheets("Intervention").[q3].Value)).Select 'AfficheVariable 'Là faut voir ce que tu veux afficher Else MsgBox "Vous devez sélectionner au moins un véhicule avant de valider...", vbInformation, "Merci de suivre les instructions..." 'fin = 1 'sert à rien 'Cancel = True'sert à rien Unload Me End If End Sub
A+
japlo
Messages postés
39
Date d'inscription
jeudi 24 janvier 2008
Statut
Membre
Dernière intervention
15 février 2011
2
Modifié par japlo le 12/02/2011 à 16:15
Modifié par japlo le 12/02/2011 à 16:15
Merci pour ton intervention j'avais deja remarqué que la fonction Array était ce qu'il me fallait mais je n'arrivais pas a la mettre en application.
'fermeture de userform4
Private Sub CommandButton1_Click()
Dim Mois
Mois = Array(" ", "Jan", "Fev", "Mar", "Avr", "Mai", "Juin", "Jui", "Aou", "Sep", "Oct", "Nov", "Déc")
If CheckBox1 Or CheckBox2 Or CheckBox3 Or CheckBox4 Or CheckBox5 Or CheckBox6 _
Or CheckBox7 Or CheckBox8 Or CheckBox8 Or CheckBox9 Or CheckBox10 Or CheckBox11 Then
Sheets(Mois(Sheets("Interventions").[q3].Value)).Select
Else
MsgBox "Vous devez sélectionner au moins un véhicule avant de valider...", vbInformation, "Merci de suivre les instructions..."
Exit sub
End If
Unload Me
End Sub
Pour ce qui est de la variable je pensais passer par la mais en fait cela ne m'était pas utile.
Ce qui me reste à faire me parrait plus compliqué.
'fermeture de userform4
Private Sub CommandButton1_Click()
Dim Mois
Mois = Array(" ", "Jan", "Fev", "Mar", "Avr", "Mai", "Juin", "Jui", "Aou", "Sep", "Oct", "Nov", "Déc")
If CheckBox1 Or CheckBox2 Or CheckBox3 Or CheckBox4 Or CheckBox5 Or CheckBox6 _
Or CheckBox7 Or CheckBox8 Or CheckBox8 Or CheckBox9 Or CheckBox10 Or CheckBox11 Then
Sheets(Mois(Sheets("Interventions").[q3].Value)).Select
Else
MsgBox "Vous devez sélectionner au moins un véhicule avant de valider...", vbInformation, "Merci de suivre les instructions..."
Exit sub
End If
Unload Me
End Sub
Pour ce qui est de la variable je pensais passer par la mais en fait cela ne m'était pas utile.
Ce qui me reste à faire me parrait plus compliqué.