Copier une cellule d'une à une autre après selection dans combobox

fripoti Messages postés 4 Date d'inscription jeudi 10 juillet 2008 Statut Membre Dernière intervention 17 juillet 2008 - 11 juil. 2008 à 13:17
NHenry Messages postés 15113 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 22 avril 2024 - 11 juil. 2008 à 15:09
Bonjour,

je cherche depuis 2 jours en vain

j'ai créé une combobox dans laquelle je selectionne une reference de produit

à coté j'ai mis un bouton commande, et l'idée c'est en cliquant de
transferer les données de la ligne correspondant au produit sur une
autre feuille dans un encadré qui fera office d'etiquette.

J'envoie des photos pour mieux me faire comprendre

http://cjoint.com/data/hkjfHa8z1I.htm
http://cjoint.com/data/hkjhfdsHgl.htm
http://cjoint.com/data/hkoQCJzWQ0.htm

je suis sur une piste mais cela ne marche pas :

Private Sub CommandButton2_Click()

Dim i As Integer

For i = 0 To ComboBox1.ListCount - 1

If ComboBox1.List(i) = ComboBox1.Value Then

Sheets("stockexcel").Cells(Ai).Value = Sheets("Feuil1").Cells(B1).Value

End If

Next i

End Sub

je veu transférer de la fauille "stockexcel" à "feuil1"

merci de m'aider

4 réponses

fripoti Messages postés 4 Date d'inscription jeudi 10 juillet 2008 Statut Membre Dernière intervention 17 juillet 2008
11 juil. 2008 à 13:38
j'ai du nouveau j'ai réussi mais pour une ligne, je n'arrive pas à mettre ma variable i :

Private Sub CommandButton2_Click()

Dim i As Integer

    For i = 0 To ComboBox1.ListCount - 1
   
        If ComboBox1.List(i) = ComboBox1.Value Then
       
Worksheets("Feuil1").Range("B1") = Worksheets("stockexcel").Range("A8")
Worksheets("Feuil1").Range("B2") = Worksheets("stockexcel").Range("B8")
Worksheets("Feuil1").Range("B3") = Worksheets("stockexcel").Range("E8")
Worksheets("Feuil1").Range("B4") = Worksheets("stockexcel").Range("F8")
Worksheets("Feuil1").Range("B5") = Worksheets("stockexcel").Range("G8")
Worksheets("Feuil1").Range("B7") = Worksheets("stockexcel").Range("H8")
Worksheets("Feuil1").Range("B8") = Worksheets("stockexcel").Range("I8")

        End If
       
    Next i

Sheets("Feuil1").Select

End Sub

je voudrais remplacer le 8 à la fin par une variable qui varie en fonction de la ligne de la combo selectionnée
mais je sais pas comment ecrire le code

merci
0
bonjourcheval Messages postés 228 Date d'inscription mercredi 13 décembre 2000 Statut Membre Dernière intervention 8 août 2011
11 juil. 2008 à 14:26
Vous êtes ici : [infomsg.aspx Thèmes]/ [infomsgf_VISUAL-BASIC_1.aspx Visual Basic 6] /
[infomsgt_DIVERS_220.aspx Divers] / [infomsgt_GENERAL_222.aspx General] /

Juste pour dire qu'il y a une section toute faite pour le VBA.
Excell utilise le VBA et non VB6.

Il est probable que tu te fasses répondre plus vite à des qestions d'excel dans la bonne section du forum.

Voilà ;)
0
Molenn Messages postés 797 Date d'inscription mardi 7 juin 2005 Statut Membre Dernière intervention 23 février 2011 7
11 juil. 2008 à 14:49
Pour mettre le numéro de ligne en variable, tu as deux options équivalentes, étant acquis que le n° de ligne se trouve dans la variable i, tu peux au choix :

- Range("A" & i).value
- Cells (i,j).value où j est le n° de la colonne (un entier donc)

Molenn
0
NHenry Messages postés 15113 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 22 avril 2024 159
11 juil. 2008 à 15:09
Bonjour,

Ou encore : Range("C1).Offset(y,x)

http://nhen0039.chez-alice.fr/index.php
0
Rejoignez-nous