Microsoft 365 Allez directement en cellule "E2" sans passer par la cellule "I2"

Usine à gaz

XLDnaute Barbatruc
Supporter XLD
Bonjour à toutes et à tous :)

J'en ai une "petite bonne" que je ne parviens pas à coder malgré mes recherches et tests.

Quand on valide "entrée" une cellule, Excel passe à la cellule suivante : Pour mon besoin, je voudrais l'éviter...

Ce que je voudrais faire :
cellule H2: Si Clic et modifie contenu ou clic ... à l'appui sur touche "entrée"
Allez directement en cellule "E2" (Cells(ActiveCell.Row, 5).Select)
sans passer par la cellule "I2"

Vous sauriez le faire ?
En cas, je joins un petit fichier test.

Un grand merci à tous pour votre aide...
Amicalement
:)
 

Pièces jointes

  • retour cellule test.xlsm
    18 KB · Affichages: 2
Dernière édition:
Solution
Si tu ne veux plus t'emm... avec les déplacements automatiques ,
code à mettre dans ThisWorkBook :
VB:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
    Application.MoveAfterReturn = True
End Sub

Private Sub Workbook_Open()
    Application.MoveAfterReturn = False
End Sub
Surtout ne pas oublier le beforeclose !!!

Eric C

XLDnaute Barbatruc
Bonjour le forum
Bonjour Lionel

Quelque chose dans ce style :
VB:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Target.Address = Range("H2").Address Then
 Range("E2").Activate
End If
End Sub
Bon appetit
@+ Eric c
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour Lionel, Eric,
Pourquoi pas simplement :
VB:
Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, [H2]) Is Nothing Then
    [E2].Select
End If
End Sub
et si on veut le faire sur toute la colonne H :
VB:
Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, [H:H]) Is Nothing Then
    Cells(Target.Row, "E").Select
End If
End Sub
 

Eric C

XLDnaute Barbatruc
Re le forum
Re Lionel, bonsoir sylvanu

Sinon pour rester dans mon jus :
VB:
 Private Sub Worksheet_Change(ByVal Target As Range)
   If Target.Address = Range("H2").Address Then
     Range("E2").Activate
   End If
 End Sub
Bonne soirée
@+ Eric c
 

Eric C

XLDnaute Barbatruc
Re le fil

Et notre ami Lionel qui passe et repasse sur le forum depuis ce matin sans dire si oui ou non les soluces mises à sa disposition lui conviennent ?? A croire qu'il pose trop de questions et fini par les oublier ???
Ah... Il porte bien le fardeau de son pseudo "Usine à gaz" 😂😂🤣😂😂
@+ Eric c
 

Usine à gaz

XLDnaute Barbatruc
Supporter XLD
Bonjour le Fil, le Forum, Bonjour Eric c :)
Effectivement, hier, je suis passé sur le fil et j'ai bien vu ta proposition.
Mais trop fatigué, je n'avais pas testé. Dsl.
Le matin je me connecte automatiquement au lancement de mon ordi mais pas eu le temps de venir sur le forum.
Je regarde ta nouvelle proposition et je reviens :)
 

Usine à gaz

XLDnaute Barbatruc
Supporter XLD
Re-Eric c,
Target fonctionne bien sans souci.

Le souci est quand je clique sur "entrée" sans modifier la cellule "Private Sub Worksheet_SelectionChange(ByVal R As Range)" s'active er le curseur passe à la cellule "I2" et je voudrais qu'il passe directement à la cellule "H2" sans passer par la cellule "I2". comme le fait le code "Private Sub Worksheet_Change(ByVal Target As Range)"

Cela ne semble pas possible et pourtant, ça m'arrangerait bien 😉
L'idéal :
1 - serait de pouvoir bloquer l'exécution de "Private Sub Worksheet_SelectionChange(ByVal R As Range)" quand je suis sur la cellule "H2" et que je clique sur "entrée,
2 - ou qu'un code permette de de constater que la cellule n'a pas été modifiée.
:)
 
Dernière édition:

Jacky67

XLDnaute Barbatruc
Re-Eric c,
Target fonctionne bien sans souci.

Le souci est quand je clique sur "entrée" sans modifier la cellule "Private Sub Worksheet_SelectionChange(ByVal R As Range)" s'active er le curseur passe à la cellule "I2" et je voudrais qu'il passe directement à la cellule "H2" sans passer par la cellule "I2". comme le fait le code "Private Sub Worksheet_Change(ByVal Target As Range)"

Cela ne semble pas possible et pourtant, ça m'arrangerait bien 😉
L'idéal :
1 - serait de pouvoir bloquer l'exécution de "Private Sub Worksheet_SelectionChange(ByVal R As Range)" quand je suis sur la cellule "H2" et que je clique sur "entrée,
2 - ou qu'un code permette de de constater que la cellule n'a pas été modifiée.
:)
Bonjour à tous
Essaye comme ceci
VB:
Option Explicit
Dim tmp$
 Private Sub Worksheet_Change(ByVal Target As Range)
   If Target.Address = Range("H2").Address And tmp <> Target Then Range("E2").Activate
  End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Target.Address = Range("H2").Address Then tmp = Target.Value
End Sub
 

Pièces jointes

  • UaG.xlsm
    17.3 KB · Affichages: 2

Discussions similaires

Statistiques des forums

Discussions
312 185
Messages
2 086 014
Membres
103 093
dernier inscrit
Molinari