Fonction avec vba

Résolu
amine69500 Messages postés 471 Statut Membre -  
amine69500 Messages postés 471 Statut Membre -
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
Configuration: Windows XP Internet Explorer 6.0

5 réponses

  1. Polux31 Messages postés 7219 Statut Membre 1 204
     
    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
    1. amine69500 Messages postés 471 Statut Membre 12
       
      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
  2. Polux31 Messages postés 7219 Statut Membre 1 204
     
    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
    1. amine69500 Messages postés 471 Statut Membre 12
       
      bonjour

      merci beaucoup ca marche a 100% c super

      bonne journer
      0
    2. amine69500 Messages postés 471 Statut Membre 12
       
      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
  3. Polux31 Messages postés 7219 Statut Membre 1 204
     
    lol ...

    tu as 2 fois boutondoption1_quandclick

    Mets 2 boutons option ... ça ira mieux

    ;o)
    0
    1. amine69500 Messages postés 471 Statut Membre 12
       
      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
  4. Polux31 Messages postés 7219 Statut Membre 1 204
     
    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
    1. amine69500 Messages postés 471 Statut Membre 12
       
      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
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Polux31 Messages postés 7219 Statut Membre 1 204
     
    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
    1. amine69500 Messages postés 471 Statut Membre 12
       
      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