Declaration de variables vba

Fermé
amine69500 Messages postés 418 Date d'inscription lundi 8 juin 2009 Statut Membre Dernière intervention 25 août 2013 - 23 juin 2009 à 23:11
yg_be Messages postés 22859 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 7 juin 2024 - 25 juin 2009 à 11:56
Bonjour,


es ce que quelqu'un peu m'aider SVP ,
je souhaiterai declarer une variable globale , entrer la valeur de la variale grace a un boutond'option1 qui est place dans un userform1, qui va me permettre de controler un texbox dans un userform2,

exemple : si jappuie sur le boutondoption1 du userform1, celui la m'ouvre le userform2 avec un textbox1 et dans le texbox1 la valeur de la cellule ("C1")

jai essai ca mais ca ne marche pas

jai declarer une variable globale , dans le userform2 toute en haut

Option explicite
Public col As String

et dans le texbox1 du userform2 jai mis ca

TextBox1.Text = Sheets(1).Cells(1, col).Value

et dans le bouton option1 du userform 1

Private Sub OptionButton1_Click()
col = ("C")
Load UserForm2
UserForm2.Show
End Sub

et si je rajoute un bouton doption 2, sa ouvre le userform2 mais la valeur du texbox 1 = D1

Private Sub OptionButton2_Click()

col = ("D")
Load UserForm2
UserForm2.Show

End Sub


merci de votre aide

11 réponses

yg_be Messages postés 22859 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 7 juin 2024 1 474
23 juin 2009 à 23:26
au lieu de
TextBox1.Text = Sheets(1).Cells(1, col).Value
essaie
TextBox1.Text = Sheets(1).Cells(1, Asc(col) - Asc("A") + 1).Value
0
amine69500 Messages postés 418 Date d'inscription lundi 8 juin 2009 Statut Membre Dernière intervention 25 août 2013 12
24 juin 2009 à 09:03
merci pour votre reponse, j'ai essai ce que vous mavez donnez mais ca ne fonctionne pa

enfaite , c le text de la cellule quon voit pa dans le textbox

merci de votre aide
0
yg_be Messages postés 22859 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 7 juin 2024 1 474
24 juin 2009 à 10:37
et pourquoi ne pas faire

userform2.TextBox1.Text = Sheets(1).Cells(1, Asc(col) - Asc("A") + 1).Value

dans OptionButton2_Click, juste après
UserForm2.Show
0
amine69500 Messages postés 418 Date d'inscription lundi 8 juin 2009 Statut Membre Dernière intervention 25 août 2013 12
24 juin 2009 à 11:06
merci encore pour la reponse , mais ca ne fonctionne pa


enfaite voila mon probleme

jai deux userform
dans le userform1 jai deux bouton option , et dans le userform2 jai un textbox
jai declarer une variable globale

option explicit
public col As string dans le userform2 toute en haut

et dans le userform2, je sai pa ou mettre ca : TextBox1.Text = Sheets(1).Cells(1, col).Text


bouton d'option 1 dans le userform1
col = ("C")
load userform2
userform2.show

bouton d'option2 dans le userform1
col=("D")
load userform2
userform2.show



merci de votre aide
0
yg_be Messages postés 22859 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 7 juin 2024 1 474 > amine69500 Messages postés 418 Date d'inscription lundi 8 juin 2009 Statut Membre Dernière intervention 25 août 2013
24 juin 2009 à 12:38
Et pourquoi ne pas faire :

bouton d'option 1 dans le userform1
col = ("C")
load userform2
userform2.show
userform2.TextBox1.Text = Sheets(1).Cells(1, Asc(col) - Asc("A") + 1).Value

bouton d'option2 dans le userform1
col=("D")
load userform2
userform2.TextBox1.Text = Sheets(1).Cells(1, Asc(col) - Asc("A") + 1).Value
userform2.show
0
Polux31 Messages postés 6917 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 1 novembre 2016 1 204
24 juin 2009 à 11:14
Bonjour,

Tu ne prends le temps de lire les codes que l'on te passe ... la réponse t'a déjà été donnée.

Userform1 :

Sub Bouton_Option1_Click()
UserForm2.Col = "C"
Load UserForm2
UserForm2.Show
End Sub

Sub Bouton_Option1_Click()
UserForm2.Col = "D"
Load UserForm2
UserForm2.Show
End Sub

UserForm2:

Option Explicit
Public col As String

Sub UserForm_Initialize()
Me.TextBox1.Text = Sheets(1).Cells(1, col).Text
End Sub


Bon courage
0
amine69500 Messages postés 418 Date d'inscription lundi 8 juin 2009 Statut Membre Dernière intervention 25 août 2013 12
24 juin 2009 à 12:48
bonjour merci pour la reponse , mais ca ne marche pa , je comprend pa, c pa normale

jai declarer une variable globale dans la userform2

option explicit
Public col As string

et dans le userform2 initializ jai mis
Me.TextBox430.Text = Sheets(1).Cells(1, col).Text

et dans le userform1

booton d'option 1
userform4.col = "C"
load userform2

booton d'option2
userform4.col = "D"
load userform2


ca ne marche pa c pa normale pouvez vous m'aidez SVP , ca fai deux jour je me casse la tete avec ca

merci de votre aide
0
amine69500 Messages postés 418 Date d'inscription lundi 8 juin 2009 Statut Membre Dernière intervention 25 août 2013 12 > amine69500 Messages postés 418 Date d'inscription lundi 8 juin 2009 Statut Membre Dernière intervention 25 août 2013
24 juin 2009 à 12:52
avec userform4.show
0
amine69500 Messages postés 418 Date d'inscription lundi 8 juin 2009 Statut Membre Dernière intervention 25 août 2013 12 > amine69500 Messages postés 418 Date d'inscription lundi 8 juin 2009 Statut Membre Dernière intervention 25 août 2013
24 juin 2009 à 12:56
avec userform2.show sur les deux bouton bien sure jai oublie de les mettre
0
yg_be Messages postés 22859 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 7 juin 2024 1 474
24 juin 2009 à 13:03
J'ai l'impression que tu ne suis pas nos suggestions...
Peux-tu couper/coller dans le forum le texte exact de ton code (pas le retaper approximativement).
Qu'est-ce qui ne fonctionne pas ? Tu as un message d'erreur, ou bien rien ne se passe ?
0
amine69500 Messages postés 418 Date d'inscription lundi 8 juin 2009 Statut Membre Dernière intervention 25 août 2013 12
24 juin 2009 à 13:10
ok merci encore de votre attention
dans le userform1

Private Sub OptionButton1_Click()
UserForm2.col = ("C")
Load UserForm2
UserForm2.Show
End Sub

Private Sub OptionButton2_Click()
UserForm2.col = ("D")
Load UserForm2
UserForm2.Show
End Sub

et dans le userform2
toute en haut

option explicit
Public col As String


et dans userform2 initializ jai mis ca :

Private Sub UserForm_Initialize()

Me.TextBox1.Text = Sheets(1).Cells(1, col).Text

End Sub


et ca ne marche pa , c pa normale

merci de votre aide
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Bidouilleu_R Messages postés 1181 Date d'inscription mardi 27 mai 2008 Statut Membre Dernière intervention 12 juillet 2012 289
24 juin 2009 à 13:20
je suis tout à fait d'accord avec yg_be et Polux31 et michel_m sur d'autres post.
de plus il est considéré comme impoli ( point de vue personnel ) de reposter une sur problème résolu pour avoir les mêmes conseils ( les miens dans ce cas).
je n'ai pas inventé VBA je l'utilise comme les autres qui te réponde donc je n'ai pas la science infuse mais je sais lire ( là c'est méchant mais bon....)

d'après tes indications j'ai fait deux userform, textbox et bouton d'option ( dés fois que ...enfin....)
un variable globale.
Chez moi ça marche.

j'imagine que c'est pareil chez les autres.

Voici mon conseil : écrit ton code sans variable puis mets une variable.
procède par étape.

voici le code que j'obtiens

public Col as integer

Private Sub UserForm_Initialize()
UserForm1.TextBox1.Value = Sheets("feuil1").Cells(1, Col).Value
End Sub
0
Polux31 Messages postés 6917 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 1 novembre 2016 1 204
24 juin 2009 à 15:16
SI TU NOUS DISAIS CLAIREMENT CE QUI NE MARCHE PAS !!!

Où as-tu un message d'erreur ? sur quelle ligne ?

Comme il est dit dans ma signature et comme je te l'ai déjà dit : Ce que l'on conçoit bien s'énonce clairement, Et les mots pour le dire arrivent aisément..

As-tu pris le temps d'écrire noir sur blanc (avec un stylo et du papier) ce que tu veux faire exactement ??? Je n'ai vraiment pas l'impression que tu saches exactement ce que tu veux faire.

Que vient faire le post #8 ici ??? :

amine69500, le mercredi 24 juin 2009 à 12:52:43
Avec userform4.show


0
amine69500 Messages postés 418 Date d'inscription lundi 8 juin 2009 Statut Membre Dernière intervention 25 août 2013 12
24 juin 2009 à 16:13
bonjour je sui vraiment desole pour le derangement
voila mon code bien expliquer et il marche bien, mais ya un autre probleme
jai declarer une variable globale dans un module

option explicit
public col As string

dan mon userform2 activate jai mis ca : TextBox1.Text = Sheets("Feuil1").Cells(1, col).Text ( es ce que c bien ici qu'il faut le mettre ?

ca marche mais je peu pas modifier le text du texbox1 , chose normale.

dans mon userform1 jai mis

Private Sub OptionButton1_Click()
col = ("C")
Load UserForm2
UserForm2.Show
End Sub

Private Sub OptionButton2_Click()
col = ("D")
Load UserForm2
UserForm2.Show
End Sub

je veu mettre un autre texbox2 mais cette fois ci je veu pouvoir remplir des cellules avec ce texbox2 , comment je peu faire svp.
0
yg_be Messages postés 22859 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 7 juin 2024 1 474
24 juin 2009 à 16:26
Il est sans doute possible de faire une sub textbox2.change, et, dans cette sub, de modifier tes cellules.
0
Polux31 Messages postés 6917 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 1 novembre 2016 1 204
24 juin 2009 à 16:32
C'est "Santa Barbara" sont truc ...

Rien n'est défini et encore moins spécifié, il code au fil de l'eau ...

J'abandonne ... j'ai mourru.

AU SUIVANT !!!

;o)
0
Bidouilleu_R Messages postés 1181 Date d'inscription mardi 27 mai 2008 Statut Membre Dernière intervention 12 juillet 2012 289
25 juin 2009 à 09:26
88 messages depuis juin 2009....
Ne serions-nous pas en train de faire un projet de stage ou de fin d'étude...

Je passe.
0
amine69500 Messages postés 418 Date d'inscription lundi 8 juin 2009 Statut Membre Dernière intervention 25 août 2013 12
25 juin 2009 à 09:37
bonjour

c exactement ca ,je sui en stage de fin d'etude, je sui debutant en vba , et la je decouvre vba , sinon desole pour tou le derangement .

bonne journer a vous
0
yg_be Messages postés 22859 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 7 juin 2024 1 474
25 juin 2009 à 10:19
Tu as suivi des etudes avant de faire ton stage de fin d'etude ?
0
amine69500 Messages postés 418 Date d'inscription lundi 8 juin 2009 Statut Membre Dernière intervention 25 août 2013 12
25 juin 2009 à 10:24
oui des etudes dans la mecanique et la conception avec catia et ansys , sinon jamais de l'informatique
0
yg_be Messages postés 22859 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 7 juin 2024 1 474
25 juin 2009 à 11:56
Alors, je me demande si c'est une bonne idée de découvrir ainsi le VBA, sans formation...
0