séquence ordre des cellules à renseigner

pascal21

XLDnaute Barbatruc
bosoir à tous
j'ai une feuille avec des cellules protégées et d'autres (celles que je dois compléter qui ne sont pas protégées
je cherche comment arriver à renseigner ces cellules dans l'ordre que je souhaite avec la touche tabulation
Normalement, cette touche sélectionne de gauche à droite puis du haut vers le bas
en gros voilà ce que je souhaite:
L5 ; D8 ; F10 ; K9 ; E11 ;E12 ; K12 ; T9; ;W9 ETC.....
il y a d'autres cellules qui sont a remplir entre celles ci mais dans de rares cas alors je ne souhaite pas les voir intégrer dans la séquence
pour le reste de la séquence si je comprends le principe, je devrais arriver à me débrouiller tout seul
certaines cellules contiennent une liste de validation
merci de votre aide
 
Dernière édition:

Victor21

XLDnaute Barbatruc
Re : sélection des cellules avec la touche tabulation

Bonsoir,Pascal21.

Je ne vois qu'une procédure événementielle (Worksheet_Change). Encore faut-il que tu acceptes les macros...
Pas le temps dans l'immédiat, reviens si tu n'y parviens pas.
;)
 

pascal21

XLDnaute Barbatruc
Re : sélection des cellules avec la touche tabulation

bonsoir
j'avais bien pensé à une macro (une de plus ou de moins dans mon classeur ne genera pas)
mais est-ce que j'aurai encore la main si je décide de sélectionner une cellule hors séquence?
dans une USF on peut choisir l'ordre des objets grace à la ligne tabindex
je vais jeter un oeil voir si ça existe sur la feuille
 

pascal21

XLDnaute Barbatruc
Re : sélection des cellules avec la touche tabulation

j'ai fais ça, c'est vilain je vous l'accorde mais ça fonctionne pour la séquence
mais si je veux revenir sur une valeur alors là c'est la misère!!!!!
en fait l'idée c'est plutôt:
si [l5] change de valeur alors activer [d8] etc....
Code:
Private Sub Worksheet_Change(ByVal Target As Range)If [l5] <> "" Then
[d8].Activate
If [d8] <> "" Then
[f10].Activate
If [f10] <> "" Then
[k9].Activate
If [k9] <> "" Then
[e11].Activate
If [e11] <> "" Then
[e12].Activate
If [e12] <> "" Then
[l12].Activate
If [l12] <> "" Then
[h13].Activate
If [h13] <> "" Then
[t9].Activate
If [t9] <> "" Then
[w9].Activate
If [w9] <> "" Then
[t10].Activate
If [t10] <> "" Then
[w10].Activate
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If


End Sub
et pis je pense que je vais abandonner l'idée de la touche tabulation car de toutes façons, j'ai besoin de la souris pour sélectionner la valeur des cellules qui ont une liste de validation
 
Dernière édition:

Pierrot93

XLDnaute Barbatruc
Re : séquence ordre des cellules à renseigner

Bonsoir,

une autre aproche, à peaufiner sans aucun doute :
Code:
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
Dim t()
If Intersect(Target, Range("B3, C4, D12, E9, H3")) Is Nothing Then Exit Sub
t = Array("B3", "C4", "D12", "E9", "H3", "H12")
Range(t(Application.Match(Target.Address(0, 0), t, 0))).Select
End Sub

bonne soirée
@+
 

pascal21

XLDnaute Barbatruc
Re : séquence ordre des cellules à renseigner

bonsoir pierrot et merci
j'ai adapté à mon classeur mais ça ne fonctionne pas
et je ne comprends pas le fonctionnement de cette macro
ça ne tient pas compte des cellules à séquencer
je vais à la soupe (2eme rappel!!!!) et je reviens mettre un classeur exemple
 

Pierrot93

XLDnaute Barbatruc
Re : séquence ordre des cellules à renseigner

Re,

Bah mettre les références de tes cellules dans le "range" et dans "l'array"... mettre bien sur le sequencement... ne pas mettre la dernière cellule dans le "range"... mais comme préciser approche peut être à creuser et à affiner...
 

pascal21

XLDnaute Barbatruc
Re : séquence ordre des cellules à renseigner

re
mais si ça fonctionne
en fait j'avais oublié de mettre la 1ere cellule L5
donc c'est tout bon
l'avantage de ton code (expliqué) c'est que je vais pouvoir créer d'autres zones de séquences sans avoir un code interminable
merci bonne soirée
 

pascal21

XLDnaute Barbatruc
Re : séquence ordre des cellules à renseigner

bonjour à tous
j'ai un soucis avec cette macro que j'ai nommée "CelluleSuivante" lorsque je lance la macro qui me permet de remettre à zéro ma feuille ça me crée une erreur
l'idée serait de mettre la macro "celluleSuivante en "pause" le temps de la remise à zéro
ma macro "efface" est dans un module commandée par un bouton et ma marco "cellulesuivante elle est commandée par l'évenement woorksheet_change
merci de votre aide
 

Pierrot93

XLDnaute Barbatruc
Re : séquence ordre des cellules à renseigner

Bonjour,

attention dans la procédure donnée, la variable "target" est initialisée par la cellule modifiée... si tu sors de cette procédure, il faut utiliser une variable objet "range" qu'il faut initialiser...

bonne journée
@+
 

pascal21

XLDnaute Barbatruc
Re : séquence ordre des cellules à renseigner

Bonjour,

attention dans la procédure donnée, la variable "target" est initialisée par la cellule modifiée... si tu sors de cette procédure, il faut utiliser une variable objet "range" qu'il faut initialiser...

bonne journée
@+
ce que je comprends:
si je ne commence pas par la 1ere cellule désignée dans le code j'ai une erreur c'est ça?
je pense que je vais retirer le code qui pose des soucis si je veux rectifier une cellule déjà renseignée
je vais mettre des couleurs avec une MFC qui l'enlève si la cellule n'est pas renseignée
au final plus simple
 
Dernière édition:

Pierrot93

XLDnaute Barbatruc
Re : séquence ordre des cellules à renseigner

Re,

ce que je comprends:
si je ne commence pas par la 1ere cellule désignée dans le code j'ai une erreur c'est ça?

non.. le code fourni se base sur la cellule que tu viens de modifier pour te diriger vers la suivante.... mets peut être un tout petit fichier avec le code qui pose problème.. car là en l'état difficile de t'en dire plus....
 

Discussions similaires

Statistiques des forums

Discussions
312 219
Messages
2 086 372
Membres
103 198
dernier inscrit
CACCIATORE