Fonction avec vba

Résolu/Fermé
amine69500 Messages postés 422 Date d'inscription lundi 8 juin 2009 Statut Membre Dernière intervention 25 août 2013 - 12 juin 2009 à 09:14
amine69500 Messages postés 422 Date d'inscription lundi 8 juin 2009 Statut Membre Dernière intervention 25 août 2013 - 15 juin 2009 à 19:24
Bonjour,

je souhaiterai savoir si quelqu'un peu me dire comment je declare ma fonction pour le probleme suivant :
j'ai 1 userform avec des listbox , listderoulante, etc ..pour remplir une colonne (colonne A) sur la feuil1 d'excel ,
jai 2 bouton d'option sur la feuil2 d'excel pour apeler le userform1, quand je clique sur le bouton d'option1 ca m'ouvre mon userform avec des list deroulante listbox, etc pour remplir la colonne A, comment je peu faire pour que quand je clique sur le bouton d'option 2 ca m'ouvre le meme userform1 mais cette fois si il doit remplir la colonne B

merci de votre aide

if bouton d'option 1 = true then
unload.Userform1
userform1.show
end if
if bouton d'option 2 = True then
unload.userform1
userform1.show
end if

merci encore de votre aide

5 réponses

Polux31 Messages postés 6917 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 1 novembre 2016 1 204
12 juin 2009 à 09:54
Bonjour,

Option Explicit

Private Sub OptionButton1_Click()
    Affichage (0)
End Sub

Private Sub OptionButton2_Click()
    Affichage (1)
End Sub

Sub Affichage(ByVal opt As Integer)
Dim col As String

   Select Case opt
      Case 0
          col = "A"
      Case 1
          col = "B"
   End Select
    
ListBox1.RowSource = col & "1:" & col & "10"

End Sub


A coller dans l'éditeur de l'UserForm et à adapter à la configuration.

;o)
0
amine69500 Messages postés 422 Date d'inscription lundi 8 juin 2009 Statut Membre Dernière intervention 25 août 2013 12
12 juin 2009 à 10:38
bonjour merci encore pour votre aide


ca marche a 100%

grace a vous j'avance bien dans projet vba et excel, merci beaucoup

juste une derniere chose svp , comment je peu dire que c'est dans la feuil1 quil se trouve les colonnes: c'est le XXXXXXX voir dans le code SVP , merci de votre attention , et bonne journé

Option Explicit

Private Sub OptionButton1_Click()
Affichage (0)
End Sub

Private Sub OptionButton2_Click()
Affichage (1)
End Sub

Sub Affichage(ByVal opt As Integer)
Dim col As String

Select Case opt
Case 0
col = "A"
Case 1
col = "B"
End Select

ListBox1.RowSource = col & "1:" & col & "10" ici XXXXXXXXXXXXXXXXXXXXXXXXXXXX

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
12 juin 2009 à 10:47
Sub Affichage(ByVal opt As Integer)
Dim col As String

Select Case opt
Case 0
col = "A"
Case 1
col = "B"
End Select

Worksheets("Feuil1").Activate 'Ici !!!

ListBox1.RowSource = col & "1:" & col & "10"

End Sub

;o)
0
amine69500 Messages postés 422 Date d'inscription lundi 8 juin 2009 Statut Membre Dernière intervention 25 août 2013 12
12 juin 2009 à 11:24
bonjour

merci beaucoup ca marche a 100% c super

bonne journer
0
amine69500 Messages postés 422 Date d'inscription lundi 8 juin 2009 Statut Membre Dernière intervention 25 août 2013 12
12 juin 2009 à 12:41
Bonjour,
esxusez moi encore fois , mais
voila le code que vous m'avez données adapte a mon projet , et je souhaiterai faire ca avec des argument c'est a dire quand j'appuie sur un bouton d'option cela me donne le meme resultat qu'avec mon code c'est a dire mon userform doit passer a la colonne suivante :
merci de votre aide

mon code :

Sub Boutondoption1_QuandClic()
UserForm6.Show
Affichage (0)
End Sub

Sub Boutondoption1_QuandClic()
UserForm6.Show
Affichage (1)
End Sub

Sub Affichage(ByVal opt As Integer)

Dim col As String

Select Case opt
Case 0
col = "C"
Case 1
col = "D"
End Select

Worksheets("Feuil1").Activate
UserForm6.ListBox50.RowSource = col & "1:" & col & "1"
End Sub

au lieu de mettre des cas je met des argument , es ce que je peu remplacer le 0 et 1 par ma colonne directement , si oui comment SVP

merci de votre aide
0
Polux31 Messages postés 6917 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 1 novembre 2016 1 204
12 juin 2009 à 12:53
lol ...

tu as 2 fois boutondoption1_quandclick

Mets 2 boutons option ... ça ira mieux

;o)
0
amine69500 Messages postés 422 Date d'inscription lundi 8 juin 2009 Statut Membre Dernière intervention 25 août 2013 12
12 juin 2009 à 12:57
dsl mais c'est un deuxieme bouton , merci de votre attention ,
Bonjour,
esxusez moi encore fois , mais
voila le code :

Sub Boutondoption1_QuandClic()
UserForm6.Show
Affichage (0)
End Sub

Sub Boutondoption2_QuandClic()
UserForm6.Show
Affichage (1)
End Sub

Sub Affichage(ByVal opt As Integer)

Dim col As String

Select Case opt
Case 0
col = "C"
Case 1
col = "D"
End Select

Worksheets("Feuil1").Activate
UserForm6.ListBox50.RowSource = col & "1:" & col & "1"
End Sub

au lieu de mettre des cas je met des argument , es ce que je peu remplacer le 0 et 1 par ma colonne directement , si oui comment SVP

merci de votre aide
0
Polux31 Messages postés 6917 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 1 novembre 2016 1 204
12 juin 2009 à 13:03
Bien sûr,

Sub Affichage(ByVal col As String)

Worksheets("Feuil1").Activate
UserForm6.ListBox50.RowSource = col & "1:" & col & "1"
End Sub


Ce qui me surprend, c'est qu'il y a qu'une ligne ... qu'elle est l'utilité du listbox pour une ligne ????

;o)
0
amine69500 Messages postés 422 Date d'inscription lundi 8 juin 2009 Statut Membre Dernière intervention 25 août 2013 12
12 juin 2009 à 13:19
bonjour ,

enfaite ya qu'une ligne c'est par ce que elle contien le titre des fiche methodologique , sinon

dans mon userform ya plusieur listbox et textbox et case a coche et des bouton qui permettent d'ouvrir d'autre userform , tous ca pour c pour remplir dans excel des colonne, que je vais recupere par un copy colle et les imprime sous format pdf, afn de faire des fiche methodologique.

mais le code que vous mavez donnée es ce que je peu le faire pour plusieur colonne , jai essai ca :
merci de votre aide

Sub Boutondoption1_QuandClic()
UserForm6.Show
Affichage (0)
End Sub

Sub Boutondoption2_QuandClic()
UserForm6.Show
Affichage (1)
End Sub

Sub Boutondoption3_QuandClic()
UserForm6.Show
Affichage (2)
End Sub

Sub Affichage(ByVal col As String)
col = "C"
col = "D"
col = "E"

Worksheets("Feuil1").Activate
UserForm6.ListBox50.RowSource = col & "1:" & col & "1"
End Sub


mais ca pa bien marché , es ce normale, si non , c quoi le probleme,

merdi de votre aide
0

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

Posez votre question
Polux31 Messages postés 6917 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 1 novembre 2016 1 204
12 juin 2009 à 14:28
Oui c'est normal ...

Est-ce que tu analyses un peu le code qu'on te passe ??? Il semblerait que non.

Sub Boutondoption1_QuandClic()
UserForm6.Show
Affichage ("A")
End Sub

Sub Boutondoption2_QuandClic()
UserForm6.Show
Affichage ("B")
End Sub

Sub Boutondoption3_QuandClic()
UserForm6.Show
Affichage ("C")
End Sub

Sub Affichage(ByVal col As String)

Worksheets("Feuil1").Activate
UserForm6.ListBox50.RowSource = col & "1:" & col & "1"
End Sub

Avant de faire un copier/coller, il faut aussi penser à faire comprendre
0
amine69500 Messages postés 422 Date d'inscription lundi 8 juin 2009 Statut Membre Dernière intervention 25 août 2013 12
15 juin 2009 à 19:24
bonjour

es ce que vous pouvez maider svp :

jai un userform avec un textbox

et un bouton sur la feuille excel , je souhaite que a chaque click sur le bouton le userform s'ouvre et textbox remplie la colonne suivante a chaque click on passe a la colonne suivante

merci de votre aide
0