Remplir une cellule grace à 3 textbox : ligne, colone, valeur
Résolu/Fermé
Ipalgo
Messages postés
51
Date d'inscription
mercredi 9 juin 2010
Statut
Membre
Dernière intervention
11 février 2017
-
Modifié par Ipalgo le 26/11/2013 à 00:49
Ipalgo Messages postés 51 Date d'inscription mercredi 9 juin 2010 Statut Membre Dernière intervention 11 février 2017 - 26 nov. 2013 à 22:19
Ipalgo Messages postés 51 Date d'inscription mercredi 9 juin 2010 Statut Membre Dernière intervention 11 février 2017 - 26 nov. 2013 à 22:19
A voir également:
- Remplir une cellule grace à 3 textbox : ligne, colone, valeur
- Aller à la ligne dans une cellule excel - Guide
- Picasa 3 - Télécharger - Albums photo
- Remplir et signer pdf - Guide
- Verrouiller cellule excel - Guide
- Excel cellule couleur si condition texte - Guide
6 réponses
Polux31
Messages postés
6917
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
1 novembre 2016
1 204
26 nov. 2013 à 13:19
26 nov. 2013 à 13:19
Voilà qui doit satisfaire la demande ...
Private Sub CommandButton1_Click() Dim DernCol As Long Dim i As Long If TextBox1.Text = "" Or TextBox2.Text = "" Or TextBox3.Text = "" Then Msgbox "Vous devez renseigner les 3 champs", vbExclamation, "Saisie Obligatoire" Exit Sub End If DernCol = Cells(1, Cells.Columns.Count).End(xlToLeft).Column For i = 1 To DernCol If Cells(1, i) = CLng(TextBox1.Text) Then Cells(CLng(TextBox2.Text), i) = TextBox3.Text TextBox2.Text = "" TextBox3.Text = "" Exit Sub End If Next i End Sub
melanie1324
Messages postés
1505
Date d'inscription
vendredi 25 mai 2007
Statut
Membre
Dernière intervention
31 janvier 2018
154
26 nov. 2013 à 09:22
26 nov. 2013 à 09:22
bonjour,
sub commandbutton1_click
cells(textbox1.value,textbox2.value) = textbox3.value
end sub
sub commandbutton1_click
cells(textbox1.value,textbox2.value) = textbox3.value
end sub
Ipalgo
Messages postés
51
Date d'inscription
mercredi 9 juin 2010
Statut
Membre
Dernière intervention
11 février 2017
Modifié par Ipalgo le 26/11/2013 à 11:58
Modifié par Ipalgo le 26/11/2013 à 11:58
Merci Mélanie,
j'ai essayé la solution ce matin ; un message d'erreur apparait : "erreur d'exécution '1004' : Erreur définie par l'application ou par l'objet "
En lisant le vba on voit que les valeur des textbox sont bien réutilisés mais elles sont entre guillemets "". Peut être que la syntaxe Cells(1,2) ne convient pas ?
En passant le curseur au dessus de la ligne de débogage j'ai l'impression que ça donne :
cells("2015","2") = "6"
j'ai essayé la solution ce matin ; un message d'erreur apparait : "erreur d'exécution '1004' : Erreur définie par l'application ou par l'objet "
En lisant le vba on voit que les valeur des textbox sont bien réutilisés mais elles sont entre guillemets "". Peut être que la syntaxe Cells(1,2) ne convient pas ?
En passant le curseur au dessus de la ligne de débogage j'ai l'impression que ça donne :
cells("2015","2") = "6"
melanie1324
Messages postés
1505
Date d'inscription
vendredi 25 mai 2007
Statut
Membre
Dernière intervention
31 janvier 2018
154
26 nov. 2013 à 12:03
26 nov. 2013 à 12:03
Ok je m'en doutais un peu, modifie comme suis :
sub commandbutton1_click
cells(textbox1.value +1-1,textbox2.value+1-1) = textbox3.value+1-1
end sub
sub commandbutton1_click
cells(textbox1.value +1-1,textbox2.value+1-1) = textbox3.value+1-1
end sub
Polux31
Messages postés
6917
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
1 novembre 2016
1 204
26 nov. 2013 à 12:09
26 nov. 2013 à 12:09
Parce que le retour du contenu d'un TextBox est de type string ...
Faire:
Faire:
Cells(CLng(TextBox1.Text), CLng(TextBox2.Text)) = TextBox3.Text
Ipalgo
Messages postés
51
Date d'inscription
mercredi 9 juin 2010
Statut
Membre
Dernière intervention
11 février 2017
26 nov. 2013 à 12:51
26 nov. 2013 à 12:51
J'ai essayé vos deux modifications, aucun message d'erreur n'apparait ce qui est plutôt bon signe, mais la case que je pense désigner ne se rempli pas. Je vous envoie un fichier exemple.
Ipalgo
Messages postés
51
Date d'inscription
mercredi 9 juin 2010
Statut
Membre
Dernière intervention
11 février 2017
26 nov. 2013 à 12:49
26 nov. 2013 à 12:49
Je place un fichier exemple à l'adresse suivante pour être plus précis :
https://www.cjoint.com/c/CKAmVTCfQte
https://www.cjoint.com/c/CKAmVTCfQte
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Polux31
Messages postés
6917
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
1 novembre 2016
1 204
26 nov. 2013 à 13:02
26 nov. 2013 à 13:02
En fait, ça fonctionne ... mais le problème exposé ne correspond pas à ce qu'il y a dans le fichier !!!
l'intersection ligne="TextBox1"/colonne="TextBox2"
Ca c'est que Mélanie et moi avons fait ...
Mais en fait, il faut renseigner l'année et non la colonne ...
l'intersection ligne="TextBox1"/colonne="TextBox2"
Ca c'est que Mélanie et moi avons fait ...
Mais en fait, il faut renseigner l'année et non la colonne ...
Ipalgo
Messages postés
51
Date d'inscription
mercredi 9 juin 2010
Statut
Membre
Dernière intervention
11 février 2017
26 nov. 2013 à 13:30
26 nov. 2013 à 13:30
Merci Polux31,
La solution est parfaite. :)
Résolu !
La solution est parfaite. :)
Résolu !
Modifié par Ipalgo le 26/11/2013 à 19:34
Cells(CLng(TextBox2.Text) + 1, i) = TextBox3.Text
26 nov. 2013 à 19:40
Lorsque j'ai mis la ligne 10 pour l'année 2014 dans le UF, j'avais bien en ligne 10 dans la colonne nommée "2014" la donnée du textbox3 ... et non pas à la ligne 9 comme il semblerait que ça se produit chez toi !!!
26 nov. 2013 à 20:27
Chez moi la ligne 1 du tableur est réservée aux intitulés des colonnes, donc mon 1er n° client correspond à la 2ème ligne du tableur, d'où le +1.
Modifié par Ipalgo le 26/11/2013 à 20:35
...Bon appétit
26 nov. 2013 à 20:56
Chez toi !!! ça tu ne l'as pas précisé, parce que chez moi, celui qui utilise ton UF, comme je l'ai fait, sait quelle ligne doit être renseignée et non quel client ... de ce fait, je ne mettrais jamais la ligne 1 dans le textbox2.
Je ne sais pas si la commande Beep fonctionne en VBA.