PROBLEME DE SYNTAXE AVEC UNE COMBOBOX

TOULLL Messages postés 27 Date d'inscription vendredi 4 septembre 2009 Statut Membre Dernière intervention 25 août 2010 - 25 août 2010 à 16:01
TOULLL Messages postés 27 Date d'inscription vendredi 4 septembre 2009 Statut Membre Dernière intervention 25 août 2010 - 25 août 2010 à 16:44
BONJOUR
j'aurai un besoin d'aide concernant la syntaxe d'une expression.
j'ai crée plusieurs combobox qui s'appele par exemple combobox620 combobox621 et ...
en fonction de l'etat de l'une de ces combobox je voudrais faire une comparaison mais je ne trouve pas la syntaxe

Dim m As Integer
m = 20
'm = n° de ligne
For m = 20 To 68
If Feuil1.ComboBox & (m+600).Text = "MA" Then
Feuil1.Cells(m, "ac") = Feuil1.Cells(m, "J")
End If

en fait je veux que la combobox par exemple si la combo620= ma ecrire la cellule 20 j en 20 ac
merci
a + jerome

4 réponses

lolokun Messages postés 1241 Date d'inscription mardi 10 octobre 2006 Statut Membre Dernière intervention 27 août 2013 7
25 août 2010 à 16:09
Bonjour,

avec une bouche du style :

Dim Cont As Control
    For Each Cont In Me.Controls
        If TypeName(Cont) = "combobox" Then
          If cont.text="MA" then
             Ton code
           End If
        End If
     Next cCont



L'expérience, c'est une connerie par jour, mais jamais la même..
0
TOULLL Messages postés 27 Date d'inscription vendredi 4 septembre 2009 Statut Membre Dernière intervention 25 août 2010
25 août 2010 à 16:23
merci
je viens de faire l'essai
j'ai oublié de préciser que j'étais sur excel
Dim Cont As Control

For Each Cont In Me.Controls
If TypeName(Cont) = "combobox" Then
If Cont.Text = "MA" Then
Feuil1.Cells(Cont - 600, "ac") = Feuil1.Cells(Cont - 600, "J")
End If
End If
Next Cont

End Sub
je suppose que cont est N° qui est à la fin de la combobox donc 620 si ma combo se nomme combobox620.
par contre lors de l'essai, j'ai le message erreur compilation avec M.controls


as tu une idée?
merci
0
lolokun Messages postés 1241 Date d'inscription mardi 10 octobre 2006 Statut Membre Dernière intervention 27 août 2013 7
25 août 2010 à 16:36
Essaye en remplaçant le Me par le nom de ton userform.

Dim Cont As Control
    For Each Cont In Me.Controls
        If cont.name="combobox621" Then
          If cont.text="MA" then
             Ton code
           End If
        End If
     Next Cont


Y'a surement plus simple que de boucler sur tous les contrôles ce n'est pas optimisé mais je n'ai pas trop le temps actuellement...

L'expérience, c'est une connerie par jour, mais jamais la même..
0
TOULLL Messages postés 27 Date d'inscription vendredi 4 septembre 2009 Statut Membre Dernière intervention 25 août 2010
25 août 2010 à 16:44
je n'utilise pas de userform
pour mon application j'ai ajouté plusieurs combobox directement sur ma feuille excel ce qui n'est pas forcemment super mais bon..
j'ai appelé ma combobox 620 car je l'ai positionné sur la ligne 20, la combobox 621 car positionné sur la ligne 21.....
ensuite ce que je voudrais c'est que si par exemple la combobox 630= ma de faire ecrire la cellule 30 j en 30 ac.
je voudrais faire une boucle pour vérifier cela pour mes combobox de 620 à 668.
Merci de votre aide
0
Rejoignez-nous