Problème d'enregistrement de données

Résolu
alpyna Messages postés 44 Date d'inscription vendredi 12 janvier 2007 Statut Membre Dernière intervention 5 février 2007 - 12 janv. 2007 à 21:25
alpyna Messages postés 44 Date d'inscription vendredi 12 janvier 2007 Statut Membre Derniè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.

Merci pour votre aide

17 réponses

mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
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"
<!--
3
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
12 janv. 2007 à 21:36
Salut,

Private Sub ComboBox1_Change()
    Range("A2").Offset(0, Mid(ComboBox1.Text, 2, Len(ComboBox1.Text))).Select
End Sub

@++

<hr size="2" width="100%" />
  --Mortalino--
Le mystérieux chevalier, "Provençal, le Gaulois"
<!--
0
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
12 janv. 2007 à 21:37
Mieux encore :

Private Sub ComboBox1_Change()
    Range("A2").Offset(0, Mid(ComboBox1.Text, 2, Len(ComboBox1.Text))).Value = TextBox1.Text
End Sub

@++

<hr size="2" width="100%" />
  --Mortalino--
Le mystérieux chevalier, "Provençal, le Gaulois"
<!--
0
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
12 janv. 2007 à 21:38
Arf, j'ai fait une erreur (ca se décale d'une cellule de trop) :

Private Sub ComboBox1_Change()
    Range("A2").Offset(0, (Mid(ComboBox1.Text, 2, Len(ComboBox1.Text)) - 1)).Value = TextBox1.Text
End Sub

@++

<hr size="2" width="100%" />
  --Mortalino--
Le mystérieux chevalier, "Provençal, le Gaulois"
<!--
0

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

Posez votre question
alpyna Messages postés 44 Date d'inscription vendredi 12 janvier 2007 Statut Membre Derniè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
@++
0
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
12 janv. 2007 à 21:45
Je t'ai fait des corrections ^^ 
et je l'ai testé, ça fonctionne

@++

<hr size="2" width="100%" />
  --Mortalino--
Le mystérieux chevalier, "Provençal, le Gaulois"
<!--
0
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
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"
<!--
0
alpyna Messages postés 44 Date d'inscription vendredi 12 janvier 2007 Statut Membre Dernière intervention 5 février 2007
12 janv. 2007 à 21:50
Pareil pour  Range("A2").Offset(0, (Mid(ComboBox1.Text, 2, Len(ComboBox1.Text)) - 1)).Value = TextBox1.Text

@++
0
alpyna Messages postés 44 Date d'inscription vendredi 12 janvier 2007 Statut Membre Dernière intervention 5 février 2007
12 janv. 2007 à 21:56
voila ce que j'ai dedans

Private Sub BTN_annuler2_Click()
FRM_ajout.Hide
Worksheets("accueil").Select
End Sub


 


 


 




 
Private Sub BTN_valider2_Click()
Range("A2").Offset(0, (Mid(ComboBox1.Text, 2, Len(ComboBox1.Text)) - 1)).Value = TextBox1.Text


End Sub


 


 


 


 


Private Sub UserForm_Activate()
    Dim Dernier As String
   
    Worksheets("parametre").Select
   
    Dernier = Range("a1").End(xlDown).Address
    ComboBox1.RowSource = "a2:" & Dernier
    ComboBox1.ListIndex = 0

@++
0
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
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"
<!--
0
alpyna Messages postés 44 Date d'inscription vendredi 12 janvier 2007 Statut Membre Dernière intervention 5 février 2007
12 janv. 2007 à 22:10
Dans mon combobox j'ai juste les valeurs de A:2 a A:10 c'est tout et rien d'autre

A2 =reception
A3=Broy
A4=dos
A5=mel
A6=...
A10=stockage

<col style=\"width: 133pt;\" width=\"177\" />

@++
0
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
12 janv. 2007 à 22:34
Alors gère avec l'index :

Range("A2").Offset(0, ComboBox1.ListIndex + 1).Value = TextBox1.Text

@++

<hr size="2" width="100%" />
  --Mortalino--
Le mystérieux chevalier, "Provençal, le Gaulois"
<!--
0
alpyna Messages postés 44 Date d'inscription vendredi 12 janvier 2007 Statut Membre Dernière intervention 5 février 2007
12 janv. 2007 à 23:06
je vais reesayer des demain,bonsoir.
@+++++
0
alpyna Messages postés 44 Date d'inscription vendredi 12 janvier 2007 Statut Membre Derniè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

merci pour vos aides.
@++++++
0
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
13 janv. 2007 à 16:57
Salut,

que veux-tu dire, par répéter l'opération, sur quel critère ?
Sans parler de code, que cherches-tu à reproduire ?

@++

<hr size="2" width="100%" />
  --Mortalino--
Le mystérieux chevalier, "Provençal, le Gaulois"
<!--
0
alpyna Messages postés 44 Date d'inscription vendredi 12 janvier 2007 Statut Membre Derniè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.
@++
0
alpyna Messages postés 44 Date d'inscription vendredi 12 janvier 2007 Statut Membre Dernière intervention 5 février 2007
13 janv. 2007 à 17:44
Ok,
Merci pour toutes les infos.
@++++++
0
Rejoignez-nous