changement de cellule apres entrée

  • Initiateur de la discussion lolo
  • Date de début
L

lolo

Guest
Bonsoir à tous
 

Pièces jointes

  • essai.xls
    23 KB · Affichages: 44
  • essai.xls
    23 KB · Affichages: 45
  • essai.xls
    23 KB · Affichages: 44
L

lolo

Guest
Voici ma question:

Comment changer de cellule active apres avoir appuyé sur entrée?
moveafterreturn?
par exemple je tape 54 dans la cellule a1 et quand j'appuie sur entrée
la nouvelle cellule active est b5!

merci
 
B

Baroude

Guest
Hello le forum !

Je te joins ton fichier avec 3 lignes de code en plus dans ta macro évenementielle...

J'espère que ça te convient...

Baroude
 

Pièces jointes

  • essai.xls
    23.5 KB · Affichages: 52
  • essai.xls
    23.5 KB · Affichages: 55
  • essai.xls
    23.5 KB · Affichages: 56
L

lolo

Guest
le code initial est:

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$E$17" Then
If Range("F22").Value = vide Then
Range("F22") = Range("E17").Value
Exit Sub
Else
Cells(Range("F65535").End(xlUp).Row + 1, 6) = Range("E17").Value
Exit Sub
End If
End If
If Target.Address = "$C$12" Then
If Range("B22").Value = vide Then
Range("B22") = Range("C12").Value
Exit Sub
Else
Cells(Range("B65535").End(xlUp).Row + 1, 2) = Range("C12").Value
Exit Sub
End If
End If
End Sub
 
L

lolo

Guest
c bon g trouvé! merci de ton aide precieuse baroude!
a+ lolo

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$E$17" Then
If Range("F22").Value = vide Then
Range("F22") = Range("E17").Value
Exit Sub
Else
Cells(Range("F65535").End(xlUp).Row + 1, 6) = Range("E17").Value
Exit Sub
End If
End If
If Target.Address = "$C$12" Then
If Target.Address = "$C$12" Then
Range("E17").Select
If Range("B22").Value = vide Then
Range("B22") = Range("C12").Value
Exit Sub
Else
Cells(Range("B65535").End(xlUp).Row + 1, 2) = Range("C12").Value
Exit Sub
End If
End If
End If
End Sub
 
M

Mytå

Guest
Bonsoir le forum

En plus simple lolo

deplacement sur une cellule apres une saisie

Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Address = "$E$17" Then
Range("$A$1").Select
Exit Sub
End If

If Target.Address = "$A$1" Then
Range("$F$2").Select
Exit Sub
End If

If Target.Address = "$F$2" Then
Range("$B$2").Select
Exit Sub
End If

End Sub

A suivre
smiley_417.gif


P.S. Prière d'accuser réception si cela te convient
ou ne convient pas en répondant sur ce Post ... Merci !
 
M

Mytå

Guest
Re lolo

Autre alternative commencer la saisie de donnée a partir d'une cellule précise

Private Sub Worksheet_Change(ByVal Target As Range)

If Range("$E$17").Value = vide Then
MsgBox ("Veuillez saisir une donnée en E17 !")
Exit Sub
End If

If Target.Address = "$E$17" Then
Range("$A$1").Select
Exit Sub
End If

If Target.Address = "$A$1" Then
Range("$F$2").Select
Exit Sub
End If

If Target.Address = "$F$2" Then
Range("$B$2").Select
Exit Sub
End If

End Sub

smiley_417.gif
 
J

Jean-Marie

Guest
Bonjour, Tout le monde

Pourquoi ne pas créer un tableau à deux colonnes, une pour la cellule de départ et l'autre pour la cellule d'arrivée, ce qui éviterai d'avoir un code à ralonge, et une facilité de rajout ou de modification.

Moi je ni connais rien en VBA.

@+Jean-Marie
 
A

andré

Guest
Salut à tous,

Auriez-vous donc oublié la méthode la plus simple ?
En vérouillant la feuille et en dévérouillant les cellules auxquelles on veut accéder, la touche TAB permet de se déplacer de l'une à l'autre sans problème.

Ândré.
 

Discussions similaires

Réponses
1
Affichages
360
Compte Supprimé 979
C
Réponses
7
Affichages
376

Statistiques des forums

Discussions
312 997
Messages
2 094 275
Membres
105 980
dernier inscrit
amic