[EXCEL] Selection de cellule dans une colonne
Résolu/Fermé
ced3c
Messages postés
237
Date d'inscription
samedi 19 juillet 2008
Statut
Membre
Dernière intervention
28 mai 2016
-
12 sept. 2012 à 13:26
ced3c Messages postés 237 Date d'inscription samedi 19 juillet 2008 Statut Membre Dernière intervention 28 mai 2016 - 12 sept. 2012 à 15:48
ced3c Messages postés 237 Date d'inscription samedi 19 juillet 2008 Statut Membre Dernière intervention 28 mai 2016 - 12 sept. 2012 à 15:48
A voir également:
- [EXCEL] Selection de cellule dans une colonne
- Déplacer une colonne excel - Guide
- Aller à la ligne dans une cellule excel - Guide
- Liste déroulante excel - Guide
- Verrouiller cellule excel - Guide
- Excel cellule couleur si condition texte - Guide
8 réponses
Morgothal
Messages postés
1236
Date d'inscription
jeudi 22 avril 2010
Statut
Membre
Dernière intervention
19 mai 2015
183
12 sept. 2012 à 13:32
12 sept. 2012 à 13:32
Bonjour,
Pourquoi pas :
Pourquoi pas :
ligne = 6 TextBox1.Value = Cells (ligne,3).Value TextBox2.Value = Cells (ligne + 1,3).Value?
eriiic
Messages postés
24570
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
23 avril 2024
7 213
Modifié par eriiic le 12/09/2012 à 13:43
Modifié par eriiic le 12/09/2012 à 13:43
Bonjour,
ou bien (pour rester proche de la question mais la proposition de morgothal est très pertinente) :
TextBox2.Value = Range(TextBox1.Value).offset(1,0).Value
eric
Jamais tu ne répondras à un mp non sollicité...
Bon, ça c'est fait.
ou bien (pour rester proche de la question mais la proposition de morgothal est très pertinente) :
TextBox2.Value = Range(TextBox1.Value).offset(1,0).Value
eric
Jamais tu ne répondras à un mp non sollicité...
Bon, ça c'est fait.
ced3c
Messages postés
237
Date d'inscription
samedi 19 juillet 2008
Statut
Membre
Dernière intervention
28 mai 2016
5
12 sept. 2012 à 14:05
12 sept. 2012 à 14:05
merci Morgothal et ériiic pour vos réponses rapides
Pour la lisibilité de mon code je préférerais la méthode de ériiic qui se rapproche de se que je voudrais (je reconnais que ce n'est peut être pas la meilleure façon de faire ^^)
J'ai donc appliqué la méthode de ériiic mais j'obtiens une erreur '1004'
"La méthode 'Range' de l'objet '_Global' a échoué"
Auriez vous une solution svp ?
merci
Pour la lisibilité de mon code je préférerais la méthode de ériiic qui se rapproche de se que je voudrais (je reconnais que ce n'est peut être pas la meilleure façon de faire ^^)
J'ai donc appliqué la méthode de ériiic mais j'obtiens une erreur '1004'
"La méthode 'Range' de l'objet '_Global' a échoué"
Auriez vous une solution svp ?
merci
Morgothal
Messages postés
1236
Date d'inscription
jeudi 22 avril 2010
Statut
Membre
Dernière intervention
19 mai 2015
183
12 sept. 2012 à 14:21
12 sept. 2012 à 14:21
Pour reprendre la formule d'Eric, il faudrait faire comme ceci :
Je n'ai pas moyens de tester...
TextBox2.Value = Range("C6").offset(1,0).Value
Je n'ai pas moyens de tester...
ced3c
Messages postés
237
Date d'inscription
samedi 19 juillet 2008
Statut
Membre
Dernière intervention
28 mai 2016
5
12 sept. 2012 à 14:39
12 sept. 2012 à 14:39
Voici un bout du code pour mon userform avec votre méthode (C6 deviens D3, j'ai fait quelques modifications)
Ce code marche parfaitement
l'inconveniant est que j'ai plusieurs autres valeurs pour mon combobox2 et qu'en appliquant cette méthode je dois beaucoup de valeur
C'est pourquoi je prefererais plutot
afin de ne changer qu'une valeur a chaque changement de nombre dans combobox2
Mais ce code ne marche pas, on dirait qu'il n'identifie pas la valeur du textbox1
With Sheets("2012") If ComboBox2 = "36" Then TextBox1.Value = Range("D3").Value TextBox2.Value = Range("D3").Offset(1, 0).Value TextBox3.Value = Range("D3").Offset(2, 0).Value TextBox4.Value = Range("D3").Offset(3, 0).Value TextBox5.Value = Range("D3").Offset(4, 0).Value TextBox6.Value = Range("D3").Offset(5, 0).Value TextBox7.Value = Range("D3").Offset(6, 0).Value End If
Ce code marche parfaitement
l'inconveniant est que j'ai plusieurs autres valeurs pour mon combobox2 et qu'en appliquant cette méthode je dois beaucoup de valeur
C'est pourquoi je prefererais plutot
With Sheets("2012") If ComboBox2 = "36" Then TextBox1.Value = Range("D3").Value TextBox2.Value = Range(TextBox1.Value).Offset(1, 0).Value TextBox3.Value = Range(TextBox1.Value).Offset(2, 0).Value TextBox4.Value = Range(TextBox1.Value).Offset(3, 0).Value TextBox5.Value = Range(TextBox1.Value).Offset(4, 0).Value TextBox6.Value = Range(TextBox1.Value).Offset(5, 0).Value TextBox7.Value = Range(TextBox1.Value).Offset(6, 0).Value End If
afin de ne changer qu'une valeur a chaque changement de nombre dans combobox2
Mais ce code ne marche pas, on dirait qu'il n'identifie pas la valeur du textbox1
Morgothal
Messages postés
1236
Date d'inscription
jeudi 22 avril 2010
Statut
Membre
Dernière intervention
19 mai 2015
183
12 sept. 2012 à 15:09
12 sept. 2012 à 15:09
TextBox1.Value = Range("D3").Value TextBox2.Value = Range(TextBox1.Value).Offset(1, 0).Value
Range(TextBox1.Value) ne peut pas fonctionner, Range() attend une adresse de cellule (Range("A1") par exemple).
Dans Range(TextBox1.Value) tu lui donne la valeur de TextBox1...
C'est pour ça que plus haut j'avais mis
TextBox2.Value = Range("C6").offset(1,0).Value
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
ced3c
Messages postés
237
Date d'inscription
samedi 19 juillet 2008
Statut
Membre
Dernière intervention
28 mai 2016
5
12 sept. 2012 à 15:21
12 sept. 2012 à 15:21
merci pour ta réponse Morghthal
Je comprends
Y aurait il une autre solution a mon problème ? Je me vois mal modifier pour chaque textbox la cellule. C'est pour cela que je cherchais quelques chose d'automatique ou je ne changerais qu'une valeur.
Je comprends
Y aurait il une autre solution a mon problème ? Je me vois mal modifier pour chaque textbox la cellule. C'est pour cela que je cherchais quelques chose d'automatique ou je ne changerais qu'une valeur.
Morgothal
Messages postés
1236
Date d'inscription
jeudi 22 avril 2010
Statut
Membre
Dernière intervention
19 mai 2015
183
12 sept. 2012 à 15:29
12 sept. 2012 à 15:29
Pourquoi pas ainsi ?
With Sheets("2012") If ComboBox2 = "36" Then cellule = "D3" TextBox1.Value = Range(cellule).Value TextBox2.Value = Range(cellule).Offset(1, 0).Value TextBox3.Value = Range(cellule).Offset(2, 0).Value TextBox4.Value = Range(cellule).Offset(3, 0).Value TextBox5.Value = Range(cellule).Offset(4, 0).Value TextBox6.Value = Range(cellule).Offset(5, 0).Value TextBox7.Value = Range(cellule).Offset(6, 0).Value End If
ced3c
Messages postés
237
Date d'inscription
samedi 19 juillet 2008
Statut
Membre
Dernière intervention
28 mai 2016
5
12 sept. 2012 à 15:38
12 sept. 2012 à 15:38
Oui, cela marche très bien :)
Merci infiniment pour ta patience
Merci infiniment pour ta patience
ced3c
Messages postés
237
Date d'inscription
samedi 19 juillet 2008
Statut
Membre
Dernière intervention
28 mai 2016
5
12 sept. 2012 à 15:42
12 sept. 2012 à 15:42
juste une derniere chose svp
y a t il possibilité de mettre les declarations textbox sur une seule ligne afin de gagner de la place ?
If ComboBox2 = "36" Then Dim cellule As String cellule = "D3" TextBox1.Value = Range(cellule).Value TextBox2.Value = Range(cellule).Offset(1, 0).Value TextBox3.Value = Range(cellule).Offset(2, 0).Value TextBox4.Value = Range(cellule).Offset(3, 0).Value TextBox5.Value = Range(cellule).Offset(4, 0).Value TextBox6.Value = Range(cellule).Offset(5, 0).Value TextBox7.Value = Range(cellule).Offset(6, 0).Value End If
y a t il possibilité de mettre les declarations textbox sur une seule ligne afin de gagner de la place ?
Morgothal
Messages postés
1236
Date d'inscription
jeudi 22 avril 2010
Statut
Membre
Dernière intervention
19 mai 2015
183
12 sept. 2012 à 15:46
12 sept. 2012 à 15:46
Gagner de la place ? Pourquoi faire ?
Tu peux séparer les grandes lignes en plusieurs avec " _" mais je ne vois pas comment faire l'inverse ...
Tu peux séparer les grandes lignes en plusieurs avec " _" mais je ne vois pas comment faire l'inverse ...
ced3c
Messages postés
237
Date d'inscription
samedi 19 juillet 2008
Statut
Membre
Dernière intervention
28 mai 2016
5
12 sept. 2012 à 15:48
12 sept. 2012 à 15:48
ca ira ^^
Merci beaucoup en tout cas :)
Merci beaucoup en tout cas :)