Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

changement de cellule avec condition

9 réponses
Avatar
URIANE
Bonjour,
Je suis encore dans mon tableau de 250 lignes avec x colonnes, je suis très
ACCESS mais pas du tout EXCEL, donc je me pose beaucoup de question. A
savoir dans EXCEL, est-ce possible sur "mise à jour "ou "entrée" d'une
cellule obliger le curser de se placer sur la cellule de son choix ? par
exemple, j'ai un chiffre à saisir dans la colonne B ligne 4 après avoir
effectué ma saisie je souhaite passer dans la colonne D de la même ligne,
car les autres colonnes sont des calculs effectués à partir de mes deux
chiffres saisis dans mes deux colonnes B et D ? pouvez-vous me conseiller,
c'est pour aller plus vite dans ma saisie d'une part et d'autre part éviter
d'écraser les formules qui se trouvent dans les colonnes, comme ce tableau
excel va servir à plusieurs personnes je ne souhaitais pas verrouiller la
feuille, car il va y avoir des "copier/coller" et des insertions de ligne
entre deux car ma première colonne c'est de la saisie "alpha" et donc
classée par ordre alphabétique......donc à part verrouiller ma feuille et
déverrouiller que mes colonnes de saisie existe t'il un autre moyen pour
forçer la main de mon "curser" après saisie de ma cellule ?
Par avance je vous remercie.
Bien cordialement

9 réponses

Avatar
Ellimac
Bonjour,

Clic droit sur l'onglet de feuille et coller ceci :

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 2 Then Target.Offset(, 2).Select
End Sub

Camille

"URIANE" wrote:

Bonjour,
Je suis encore dans mon tableau de 250 lignes avec x colonnes, je suis très
ACCESS mais pas du tout EXCEL, donc je me pose beaucoup de question. A
savoir dans EXCEL, est-ce possible sur "mise à jour "ou "entrée" d'une
cellule obliger le curser de se placer sur la cellule de son choix ? par
exemple, j'ai un chiffre à saisir dans la colonne B ligne 4 après avoir
effectué ma saisie je souhaite passer dans la colonne D de la même ligne,
car les autres colonnes sont des calculs effectués à partir de mes deux
chiffres saisis dans mes deux colonnes B et D ? pouvez-vous me conseiller,
c'est pour aller plus vite dans ma saisie d'une part et d'autre part éviter
d'écraser les formules qui se trouvent dans les colonnes, comme ce tableau
excel va servir à plusieurs personnes je ne souhaitais pas verrouiller la
feuille, car il va y avoir des "copier/coller" et des insertions de ligne
entre deux car ma première colonne c'est de la saisie "alpha" et donc
classée par ordre alphabétique......donc à part verrouiller ma feuille et
déverrouiller que mes colonnes de saisie existe t'il un autre moyen pour
forçer la main de mon "curser" après saisie de ma cellule ?
Par avance je vous remercie.
Bien cordialement





Avatar
FFO
Salut URIANE

Dans le VBA de ta feuille (Alt+F11) met ce code :

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = Range("C1").Column Then
Target.Offset(0, 1).Select
End If
End Sub

a chaque saisie d'une cellule de la colonne C le curseur se positionnera sur
la cellule de la colonne D même ligne

avec ce code :

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = Range("C1").Column Then
Target.Offset(0, 1).Select
End If
If Target.Column = Range("D1").Column Then
Target.Offset(1, -1).Select
End If
End Sub

même résultat que pour le précédent mais avec en plus pour toute saisie dans
une cellule de la colonne D positionnement du curseur dans la cellule de la
colonne C ligne suivante

Celà devrait convenir


Bonjour,
Je suis encore dans mon tableau de 250 lignes avec x colonnes, je suis très
ACCESS mais pas du tout EXCEL, donc je me pose beaucoup de question. A
savoir dans EXCEL, est-ce possible sur "mise à jour "ou "entrée" d'une
cellule obliger le curser de se placer sur la cellule de son choix ? par
exemple, j'ai un chiffre à saisir dans la colonne B ligne 4 après avoir
effectué ma saisie je souhaite passer dans la colonne D de la même ligne,
car les autres colonnes sont des calculs effectués à partir de mes deux
chiffres saisis dans mes deux colonnes B et D ? pouvez-vous me conseiller,
c'est pour aller plus vite dans ma saisie d'une part et d'autre part éviter
d'écraser les formules qui se trouvent dans les colonnes, comme ce tableau
excel va servir à plusieurs personnes je ne souhaitais pas verrouiller la
feuille, car il va y avoir des "copier/coller" et des insertions de ligne
entre deux car ma première colonne c'est de la saisie "alpha" et donc
classée par ordre alphabétique......donc à part verrouiller ma feuille et
déverrouiller que mes colonnes de saisie existe t'il un autre moyen pour
forçer la main de mon "curser" après saisie de ma cellule ?
Par avance je vous remercie.
Bien cordialement





Avatar
URIANE
Bonjour et merci pour ta réponse, mais j'ai besoin de comprendre, j'ai fais
un copié/collé de ta formule sur l'onglet de ma feuille mais rien ne se
passe, normalement que doit t-il se passer ??? quel évenement doit se
déclencher derrière ce code VB merci si tu peux me donner davantage
d'explication.
cordialement
"Ellimac" a écrit dans le message de
news:
Bonjour,

Clic droit sur l'onglet de feuille et coller ceci :

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 2 Then Target.Offset(, 2).Select
End Sub

Camille

"URIANE" wrote:

Bonjour,
Je suis encore dans mon tableau de 250 lignes avec x colonnes, je suis
très
ACCESS mais pas du tout EXCEL, donc je me pose beaucoup de question. A
savoir dans EXCEL, est-ce possible sur "mise à jour "ou "entrée" d'une
cellule obliger le curser de se placer sur la cellule de son choix ? par
exemple, j'ai un chiffre à saisir dans la colonne B ligne 4 après avoir
effectué ma saisie je souhaite passer dans la colonne D de la même ligne,
car les autres colonnes sont des calculs effectués à partir de mes deux
chiffres saisis dans mes deux colonnes B et D ? pouvez-vous me
conseiller,
c'est pour aller plus vite dans ma saisie d'une part et d'autre part
éviter
d'écraser les formules qui se trouvent dans les colonnes, comme ce
tableau
excel va servir à plusieurs personnes je ne souhaitais pas verrouiller la
feuille, car il va y avoir des "copier/coller" et des insertions de ligne
entre deux car ma première colonne c'est de la saisie "alpha" et donc
classée par ordre alphabétique......donc à part verrouiller ma feuille et
déverrouiller que mes colonnes de saisie existe t'il un autre moyen pour
forçer la main de mon "curser" après saisie de ma cellule ?
Par avance je vous remercie.
Bien cordialement







Avatar
URIANE
Désolée j'ai compris, j'ai voulu aller trop vite MERCI c'est bon
.............
"Ellimac" a écrit dans le message de
news:
Bonjour,

Clic droit sur l'onglet de feuille et coller ceci :

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 2 Then Target.Offset(, 2).Select
End Sub

Camille

"URIANE" wrote:

Bonjour,
Je suis encore dans mon tableau de 250 lignes avec x colonnes, je suis
très
ACCESS mais pas du tout EXCEL, donc je me pose beaucoup de question. A
savoir dans EXCEL, est-ce possible sur "mise à jour "ou "entrée" d'une
cellule obliger le curser de se placer sur la cellule de son choix ? par
exemple, j'ai un chiffre à saisir dans la colonne B ligne 4 après avoir
effectué ma saisie je souhaite passer dans la colonne D de la même ligne,
car les autres colonnes sont des calculs effectués à partir de mes deux
chiffres saisis dans mes deux colonnes B et D ? pouvez-vous me
conseiller,
c'est pour aller plus vite dans ma saisie d'une part et d'autre part
éviter
d'écraser les formules qui se trouvent dans les colonnes, comme ce
tableau
excel va servir à plusieurs personnes je ne souhaitais pas verrouiller la
feuille, car il va y avoir des "copier/coller" et des insertions de ligne
entre deux car ma première colonne c'est de la saisie "alpha" et donc
classée par ordre alphabétique......donc à part verrouiller ma feuille et
déverrouiller que mes colonnes de saisie existe t'il un autre moyen pour
forçer la main de mon "curser" après saisie de ma cellule ?
Par avance je vous remercie.
Bien cordialement







Avatar
JB
Bonjour,

Dans le code de la feuille:
Clic-droit onglet/Visualiser code

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 2 And Target.Count = 1 Then
Cells(Target.Row, 4).Select
End If

If Target.Column = 4 And Target.Count = 1 Then
Cells(Target.Row + 1, 2).Select
End If
End Sub

JB
http://boisgontierjacques.free.fr/


On 5 sep, 08:52, "URIANE" wrote:
Bonjour,
Je suis encore dans mon tableau de 250 lignes avec x colonnes, je suis tr ès
ACCESS mais pas du tout EXCEL, donc je me pose beaucoup de question. A
savoir dans EXCEL, est-ce possible sur "mise à jour "ou "entrée" d'une
cellule obliger le curser de se placer sur la cellule de son choix ? par
exemple, j'ai un chiffre à saisir dans la colonne B ligne 4 après avo ir
effectué ma saisie je souhaite passer dans la colonne D de la même li gne,
car les autres colonnes sont des calculs effectués à partir de mes de ux
chiffres saisis dans mes deux colonnes B et D ? pouvez-vous me conseiller,
c'est pour aller plus vite dans ma saisie d'une part et d'autre part év iter
d'écraser les formules qui se trouvent dans les colonnes, comme ce tabl eau
excel va servir à plusieurs personnes je ne souhaitais pas verrouiller la
feuille, car il va y avoir des "copier/coller" et des insertions de ligne
entre deux car ma première colonne c'est de la saisie "alpha" et donc
classée par ordre alphabétique......donc à part verrouiller ma feui lle et
déverrouiller que mes colonnes de saisie existe t'il un autre moyen pour
forçer la main de mon "curser" après saisie de ma cellule ?
Par avance je vous remercie.
Bien cordialement


Avatar
JB
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Range("B4:B10", "D4:D10"), Target) Is Nothing And
Target.Count = 1 Then
If Target.Column = 2 Then Cells(Target.Row, 4).Select
If Target.Column = 4 Then Cells(Target.Row + 1, 2).Select
End If
End Sub

JB


On 5 sep, 09:25, JB wrote:
Bonjour,

Dans le code de la feuille:
Clic-droit onglet/Visualiser code

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 2 And Target.Count = 1 Then
Cells(Target.Row, 4).Select
End If

If Target.Column = 4 And Target.Count = 1 Then
Cells(Target.Row + 1, 2).Select
End If
End Sub

JBhttp://boisgontierjacques.free.fr/

On 5 sep, 08:52, "URIANE" wrote:



Bonjour,
Je suis encore dans mon tableau de 250 lignes avec x colonnes, je suis très
ACCESS mais pas du tout EXCEL, donc je me pose beaucoup de question. A
savoir dans EXCEL, est-ce possible sur "mise à jour "ou "entrée" d' une
cellule obliger le curser de se placer sur la cellule de son choix ? par
exemple, j'ai un chiffre à saisir dans la colonne B ligne 4 après a voir
effectué ma saisie je souhaite passer dans la colonne D de la même ligne,
car les autres colonnes sont des calculs effectués à partir de mes deux
chiffres saisis dans mes deux colonnes B et D ? pouvez-vous me conseill er,
c'est pour aller plus vite dans ma saisie d'une part et d'autre part éviter
d'écraser les formules qui se trouvent dans les colonnes, comme ce ta bleau
excel va servir à plusieurs personnes je ne souhaitais pas verrouille r la
feuille, car il va y avoir des "copier/coller" et des insertions de lig ne
entre deux car ma première colonne c'est de la saisie "alpha" et donc
classée par ordre alphabétique......donc à part verrouiller ma fe uille et
déverrouiller que mes colonnes de saisie existe t'il un autre moyen p our
forçer la main de mon "curser" après saisie de ma cellule ?
Par avance je vous remercie.
Bien cordialement- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -



Avatar
URIANE
Je vais compliquer les choses, ma colonne "B" n'est pas une saisie
obligatoire, elle le devient lorsqu'il me manque un individu et que je dois
l'insérer en rajoutant une ligne, mais dans la majorité des cas ma saisie
commence en colonne"C" puis je dois passer dans la colonne "E" en final dans
la colonne "L" comment puis je donc faire passer mon curser donc en premier
de C vers E puis E vers L ?
Merci
"Ellimac" a écrit dans le message de
news:
Bonjour,

Clic droit sur l'onglet de feuille et coller ceci :

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 2 Then Target.Offset(, 2).Select
End Sub

Camille

"URIANE" wrote:

Bonjour,
Je suis encore dans mon tableau de 250 lignes avec x colonnes, je suis
très
ACCESS mais pas du tout EXCEL, donc je me pose beaucoup de question. A
savoir dans EXCEL, est-ce possible sur "mise à jour "ou "entrée" d'une
cellule obliger le curser de se placer sur la cellule de son choix ? par
exemple, j'ai un chiffre à saisir dans la colonne B ligne 4 après avoir
effectué ma saisie je souhaite passer dans la colonne D de la même ligne,
car les autres colonnes sont des calculs effectués à partir de mes deux
chiffres saisis dans mes deux colonnes B et D ? pouvez-vous me
conseiller,
c'est pour aller plus vite dans ma saisie d'une part et d'autre part
éviter
d'écraser les formules qui se trouvent dans les colonnes, comme ce
tableau
excel va servir à plusieurs personnes je ne souhaitais pas verrouiller la
feuille, car il va y avoir des "copier/coller" et des insertions de ligne
entre deux car ma première colonne c'est de la saisie "alpha" et donc
classée par ordre alphabétique......donc à part verrouiller ma feuille et
déverrouiller que mes colonnes de saisie existe t'il un autre moyen pour
forçer la main de mon "curser" après saisie de ma cellule ?
Par avance je vous remercie.
Bien cordialement







Avatar
lSteph
Bonjour,

et pour que cela marche partout
(repèrage des cellules vides ou non de la ligne)

Private Sub Worksheet_Change(ByVal Target As Range)
Dim c As Range
With Target
For Each c In Range(.Offset(, 1), Cells(.Row, 255))
If IsEmpty(c) Then Exit For
Next
End With
c.Select

End Sub
Avatar
URIANE
Merci
"lSteph" a écrit dans le message de news:

Bonjour,

et pour que cela marche partout
(repèrage des cellules vides ou non de la ligne)

Private Sub Worksheet_Change(ByVal Target As Range)
Dim c As Range
With Target
For Each c In Range(.Offset(, 1), Cells(.Row, 255))
If IsEmpty(c) Then Exit For
Next
End With
c.Select

End Sub