Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Déplacer la sélection d'une cellule

  • Initiateur de la discussion Roger
  • Date de début
R

Roger

Guest
Bonjour à tous

Et encore bravo pour ce forum si riche.

Je suis en train de réaliser un fichier de saisie.
J’ai une boîte de dialogue qui comporte 3 champs A, B et C, un bouton Validation et un bouton Sortir.
Lors de l’appui sur le bouton ' Validation ', je recopie ces valeurs sur 3 cases contiguës d’une feuille.
Ce que je ne sais pas faire :
- Sélectionner la cellule en dessous de la recopie
- Effacer les valeurs qui ont été rentrées dans la boîte de dialogue

Quelqu’un pourrai-t-il m’aider ? Si c’est nécessaire, je mettrais le petit bout de programme que j’ai écrit.

Merci d’avance

Roger
 

Hervé

XLDnaute Barbatruc
Bonsoir

Pour renvoyer les valeurs dans la feuille l'une en dessous de l'autre, il faut que tu connaisse la dernière ligne remplie :

dim derniereligne as integer
derniereligne=range('a65536').end(xlup).row

donc la dernière ligne vide :
derniereligne=derniereligne +1

d'ou, pour renvoyer la valeur d'un textbox1 vers la premiere cellule vide de la colonne A :

range('a'&derniereligne)=textbox1.value


Pour effacer des controls, le plus simple :

textbox1.value=''

En espérant t'avoir aidé, sinon tu connais la maison....
 
R

Roger

Guest
Merci Tcho pour votre réponse.

J'ai regardé Shift (puisque j'ai Excel In English) mais cela ne m'a pas apporté grand chose. Ils parlent de 'Changes the horizontal offset of the shadow'.

Mais je viens de trouver par ailleurs. J'ai utilisé:
Selection.Offset(1, -0).Select

Par contre, je ne sais pas réaliser une saisie. Y aurait-il quelque part un exemple de saisie : recopie des boîtes de dialogue, effacer le contenu des saisies avant une saisie suivante. Je pense qu’il y a peut être une boucle dans le genre ' tant que je ne sors pas, je saisis les données ' ?

Roger
 
R

Roger

Guest
Bonsoir Hervé.

Je n'avais pas 'percuté' de suite à votre proposition. Effectivement, c'est astucieux. J'avais entre temps trouvé une autre solution, mais je vais plutôt me servir de la vôtre.
J'ai vu aussi la méthode pour effacer le textbox.

Par contre, comme je l'ai dit à Tcho, je ne sais pas faire une saisie correcte. Par exemple: je me déplace de la ligne en-dessous(ça j'ai compris), puis d'une cellule à droite pour mettre le Textbox2, encore d'une cellule à droite pour mettre le Textbox3...

Roger
 

Eric C

XLDnaute Barbatruc
Bonsoir le forum
Bonsoir Roger, bonjour Hervé, bonsoir Tcho!

Si j'ai bien compris, en B 1ère valeur du TxtBox1, on passe 1 ligne puis en C & D valeur des TxtBox2 & 3...

Code:
Private Sub CommandButton1_Click()
Dim l As Integer
l = Sheets('Feuil1').Range('c65536').End(xlUp).Row + 1

With Sheets('Feuil1')
.Range('B' & l).Value = TextBox1.Value
End With

With Sheets('Feuil1')

.Range('C' & l + 1).Value = TextBox2.Value
.Range('D' & l + 1).Value = TextBox3.Value
End With


TextBox1.Value = ''
TextBox2.Value = ''
TextBox3.Value = ''

TextBox1.SetFocus

End Sub
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…