alpyna
Messages postés44Date d'inscriptionvendredi 12 janvier 2007StatutMembreDernière intervention 5 février 2007
-
12 janv. 2007 à 21:25
alpyna
Messages postés44Date d'inscriptionvendredi 12 janvier 2007StatutMembreDernière intervention 5 février 2007
-
13 janv. 2007 à 17:44
Bonsoir,
Bonne et heureuse Année a tous.
Etant debutant dans le domaine,j'ai un petit probleme,je vais essayer d'etre assez clair.
Sur mon useform j'ai un bouton "ComboBox1 " un "TextBox1", un bouton" BTN_valider2"et un bouton annuler .Ainsi qu'une feuille excel nomme"parametre" ou dans la colonne A (de A:2 a A:10) j'ai la liste du "ComboBox1". par
Private Sub UserForm_Activate()
Dim Dernier As String
Worksheets("parametre").Select
Dernier = Range("a1").End(xlDown).Address
ComboBox1.RowSource = "a2:" & Dernier
ComboBox1.ListIndex = 0
End Sub
Mon probleme c'est que je n'arrive pas a faire la chose suivante.Quand je choisi dans mon "combobox1 "A2" alors la valeur du textbox1 doit se mettre dans la colonne "B2" en cliquant sur le bouton "BTN_valider2" . et si je selectionne "comboxbox "A3" alors la valeur de testbox1 doit aller en "C2" ainsi de suite......Tous cela autant de fois possible.
En esperant avoir ete assez clair.
mortalino
Messages postés6786Date d'inscriptionvendredi 16 décembre 2005StatutMembreDernière intervention21 décembre 201118 13 janv. 2007 à 17:40
Non, c'est toujours pas clair, depuis le départ, les données se décalent par colonne, maintenant, tu veux les deux en même temps.
Avec la solution que je t'ai donnée, tu devrais t'en sortir, sache que Offset sert à décaler la cellule depuis une cellule donnée en paramètre.
Range(TaCellule).Offset(x, y).Text = "blabla"
si x = 1, ça décale d'une ligne vers le bas
si y = 1, ça décale d'une colonne vers la droite.
T'as plus qu'à faire des boucles.
@++
<hr size="2" width="100%" />
--Mortalino--
Le mystérieux chevalier, "Provençal, le Gaulois"
<!--
alpyna
Messages postés44Date d'inscriptionvendredi 12 janvier 2007StatutMembreDernière intervention 5 février 2007 12 janv. 2007 à 21:43
Bonsoir,
ça bug ,ca me marque imcompatibilite de type
erreur d'execution "13"
et ca me surligne Range("A2").Offset(0, Mid(ComboBox1.Text, 2, Len(ComboBox1.Text))).Select
@++
mortalino
Messages postés6786Date d'inscriptionvendredi 16 décembre 2005StatutMembreDernière intervention21 décembre 201118 12 janv. 2007 à 21:47
... et ne met pas mon code dans l'évènement change du combobox car s'il n'y a rien dans textbox, t'aura rien dans ta cellule.
En cas, met le dans l'évènement click de ton bouton
@++
<hr size="2" width="100%" />
--Mortalino--
Le mystérieux chevalier, "Provençal, le Gaulois"
<!--
mortalino
Messages postés6786Date d'inscriptionvendredi 16 décembre 2005StatutMembreDernière intervention21 décembre 201118 12 janv. 2007 à 21:59
Oui, c'est ton RowSource qui pose problème, je pensais que dans ton Combobox tu avais juste A2, A3, A4, A5, etc...
Donc si t'as autres choses , ça ne pourra pas fonctionnait.
@++
<hr size="2" width="100%" />
--Mortalino--
Le mystérieux chevalier, "Provençal, le Gaulois"
<!--
alpyna
Messages postés44Date d'inscriptionvendredi 12 janvier 2007StatutMembreDernière intervention 5 février 2007 13 janv. 2007 à 16:51
Bonjour,
la nuit a portee ses fruits:
je viens de recreeer un userform ainsi qu'une nouvelle feuille excel,et ça marche.TROP NICKEL;
par contre je me suis mal exprime dans mon annonce.en fait j'aurai aimer repeter cette operation "x" fois .comme pour faire un tableau,j'ai essayer cette ligne mais "NADA"
Range("A2").Offset(0, ComboBox1.ListIndex + 1).Value = TextBox1.Text
If Range("A2").Offset(0, ComboBox1.ListIndex + 1).Value <> "" Then Range("A2").End(xlDown).Select
alpyna
Messages postés44Date d'inscriptionvendredi 12 janvier 2007StatutMembreDernière intervention 5 février 2007 13 janv. 2007 à 17:26
En fait,j'aimerai en ecrire dans toutes mes colonnes:
exemple: si ComboBox1 valeur "A2" TextBox1 "aaaaa" alors dans la cellule "B2" = "aaaaa" si je refait l'operation une autre fois en selectionnant Combobox1 = valeur cellule"A2" Textbox1="bbbbb" alors j'aimerai que cette valeur ce mette dans la cellule"B3" dessous ma premiere valeur.La meme chose dans les autres colonnes
En esperant avoir ete assez clair.
@++