passer d'une cellule à une autre

  • Initiateur de la discussion Initiateur de la discussion dam3117
  • Date de début Date de début

dam3117

XLDnaute Occasionnel
Bonsoir,

Je cherhce ue macro pour passer d'une cellule à une autre à l'aide d'un bouton + et un -

passer de f61 à f62 à f63.....à f90.

merci d'avance
dam
 

Excel-lent

XLDnaute Barbatruc
Re : passer d'une cellule à une autre

Bonsoir dam3117

dam3117 à dit:
passer de f61 à f62 à f63.....à f90

Si ton logiciel Excel est paramétré de la façon suivante :
"outils" / "options" / onglet "modification"
que tu as coché : "déplacer la sélection après validation"
est à sens, choisi "bas"

cela se fait déjà automatiquement par le simple appuie de l'une des deux touches "enter".

Mais si tu veux absolument cela, voici ce que j'ai trouvé sur le net (non testé).

Code:
Public Sub DétectionTouchePlus()
ThisWorkbook.Application.OnKey "+", "ThisWorkbook.[COLOR="Blue"][B]TaMacro[/B][/COLOR]"
End Sub


Public Sub [COLOR="Blue"][B]TaMacro[/B][/COLOR]()
....
End Sub

Bonne soirée
 

gfortin9

XLDnaute Occasionnel
Re : passer d'une cellule à une autre

Allô!

Si tu veux utiliser le + et le - du pavé numérique ....

Dans la section "ThisWorkBook" tu écris :

Private Sub Workbook_Activate()
Application.OnKey "{107}", "GGauche" ' GGauche est le nom de la macro
Application.OnKey "{109}", "DDroite" ' DDroite est le nom de l'autre macro
End Sub


Dans la section "Modules" ajoute un Module1 et écris-y :

Sub DDroite()
ActiveCell.Offset(0, 1).Select
End Sub

Sub GGauche()
ActiveCell.Offset(0, -1).Select
End Sub

Fermer Excel et rouvrir le fichier concerné.
(J'ai constaté que si je ne fermais pas Excel, il ne tenait pas compte des changements et n'activait pas les touches).

Voilà c'est testé et opérationnel

GFortin
À l'ouest de l'Atlantique, à l'est du Pacifique.
 

alex67800

XLDnaute Impliqué
Re : passer d'une cellule à une autre

Bonsoir Dam3117, Excel-Lent,

Une proposition:
Code:
Private Sub CommandButton1_Click()
ActiveCell.Offset(-1, 0).Select 'je monte d'une cellule
End Sub

Private Sub CommandButton2_Click()
ActiveCell.Offset(1, 0).Select 'je descend d'une cellule

End Sub

Reste à adapter à tes boutons!

Mais ces boutons font exactement ce que font les flèches de ton clavier! A moins qu'ils soient dans un usf?

Edit: Bonsoir gfortin9, nos posts se sont entre-choqué lol. Si tu regardes la demande de notre ami, il veut se déplacer en vertical (F61>>>> F62), etc.. et inversement proportionnel ;). Sinon pas mal l'astuce pour coder les touches + et - du clavier. Mais du coup elle perde leur fonction première (addition, soustraction) non?
 
Dernière édition:

gfortin9

XLDnaute Occasionnel
Re : passer d'une cellule à une autre

Allô alex67800!
Allô le monde!

Edit: Bonsoir gfortin9, nos posts se sont entre-choqué lol. Si tu regardes la demande de notre ami, il veut se déplacer en vertical (F61>>>> F62), etc.. et inversement proportionnel ;). Sinon pas mal l'astuce pour coder les touches + et - du clavier. Mais du coup elle perde leur fonction première (addition, soustraction) non?

Effectivement, je n'ai pas bien lu, j'en suis fort désolé.

Concernant la perte de la fonction première, effectivement, cela peut-être contraignant.
Par contre, on peut annuler si plus loin dans le traitement on ne veut plus ces options.
Il suffit de reprendre le code et de ne pas inscrire de nom de la macro au bout.
exemple :
Application.OnKey "{107}"
Application.OnKey "{109}"

:cool:

GFortin
 

Discussions similaires

Réponses
7
Affichages
353
Réponses
7
Affichages
301
Réponses
5
Affichages
326
Réponses
2
Affichages
212
  • Question Question
Microsoft 365 Mini macro en VBA
Réponses
1
Affichages
162