Bonjour !
Je cherche à ajouter à la macro suivante :
lorsque que l'on clique dans la colonne B (de la ligne 2 à 1999), on
rebondi
dans la ligne active dans la colonne C.
Par exemple : si je clique en B15, je me retrouve automatiquement en C15
si je clique en B264, je me retrouve automatiquement en C264.
----------------------------------------------------------------------------
------
Voici la macro en question (dans laquelle je cherche à ajouter) :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim ws As Worksheet
Set ws = ActiveSheet
Set plage = Union(Range("A2:A1999"), Range("C2:I1999"))
If ws.ProtectContents Then
ws.Unprotect "1234"
plage.Locked = True
ws.Protect "1234"
Else
plage.Locked = False
Application.EnableEvents = False
If Intersect(Target, plage) Is Nothing Then
Select Case Target.Row
Case 2000 To 2050
Range("A1999").Select
Case 1
Range("A2").Select
'partout ailleurs
Case Else
Range("A" & ActiveCell.Row).Select
End Select
End If
Application.EnableEvents = True
End If
End Sub
------------------------------------------------------------
Merci beaucoup pour votre aide
Caroline
Bonjour !
Je cherche à ajouter à la macro suivante :
lorsque que l'on clique dans la colonne B (de la ligne 2 à 1999), on
rebondi
dans la ligne active dans la colonne C.
Par exemple : si je clique en B15, je me retrouve automatiquement en C15
si je clique en B264, je me retrouve automatiquement en C264.
----------------------------------------------------------------------------
------
Voici la macro en question (dans laquelle je cherche à ajouter) :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim ws As Worksheet
Set ws = ActiveSheet
Set plage = Union(Range("A2:A1999"), Range("C2:I1999"))
If ws.ProtectContents Then
ws.Unprotect "1234"
plage.Locked = True
ws.Protect "1234"
Else
plage.Locked = False
Application.EnableEvents = False
If Intersect(Target, plage) Is Nothing Then
Select Case Target.Row
Case 2000 To 2050
Range("A1999").Select
Case 1
Range("A2").Select
'partout ailleurs
Case Else
Range("A" & ActiveCell.Row).Select
End Select
End If
Application.EnableEvents = True
End If
End Sub
------------------------------------------------------------
Merci beaucoup pour votre aide
Caroline
Bonjour !
Je cherche à ajouter à la macro suivante :
lorsque que l'on clique dans la colonne B (de la ligne 2 à 1999), on
rebondi
dans la ligne active dans la colonne C.
Par exemple : si je clique en B15, je me retrouve automatiquement en C15
si je clique en B264, je me retrouve automatiquement en C264.
----------------------------------------------------------------------------
------
Voici la macro en question (dans laquelle je cherche à ajouter) :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim ws As Worksheet
Set ws = ActiveSheet
Set plage = Union(Range("A2:A1999"), Range("C2:I1999"))
If ws.ProtectContents Then
ws.Unprotect "1234"
plage.Locked = True
ws.Protect "1234"
Else
plage.Locked = False
Application.EnableEvents = False
If Intersect(Target, plage) Is Nothing Then
Select Case Target.Row
Case 2000 To 2050
Range("A1999").Select
Case 1
Range("A2").Select
'partout ailleurs
Case Else
Range("A" & ActiveCell.Row).Select
End Select
End If
Application.EnableEvents = True
End If
End Sub
------------------------------------------------------------
Merci beaucoup pour votre aide
Caroline
Bonsoir.
Si j'ai tout compris, ajoute en fin de macro :
If Intersect(Target, Range("B2:B1999")) Is Nothing Then Exit Sub
Application.EnableEvents = False
Target.Offset(0, 1).Select
Application.EnableEvents = True
Cordialement.
Daniel
"Caroline L." a écrit dans le message de news:
%Bonjour !
Je cherche à ajouter à la macro suivante :
lorsque que l'on clique dans la colonne B (de la ligne 2 à 1999), on
rebondi
dans la ligne active dans la colonne C.
Par exemple : si je clique en B15, je me retrouve automatiquement en C15
si je clique en B264, je me retrouve automatiquement en C264.
--------------------------------------------------------------------------
--
------
Voici la macro en question (dans laquelle je cherche à ajouter) :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim ws As Worksheet
Set ws = ActiveSheet
Set plage = Union(Range("A2:A1999"), Range("C2:I1999"))
If ws.ProtectContents Then
ws.Unprotect "1234"
plage.Locked = True
ws.Protect "1234"
Else
plage.Locked = False
Application.EnableEvents = False
If Intersect(Target, plage) Is Nothing Then
Select Case Target.Row
Case 2000 To 2050
Range("A1999").Select
Case 1
Range("A2").Select
'partout ailleurs
Case Else
Range("A" & ActiveCell.Row).Select
End Select
End If
Application.EnableEvents = True
End If
End Sub
------------------------------------------------------------
Merci beaucoup pour votre aide
Caroline
Bonsoir.
Si j'ai tout compris, ajoute en fin de macro :
If Intersect(Target, Range("B2:B1999")) Is Nothing Then Exit Sub
Application.EnableEvents = False
Target.Offset(0, 1).Select
Application.EnableEvents = True
Cordialement.
Daniel
"Caroline L." <caroland@videotron.ca> a écrit dans le message de news:
%23lOJ1K3bFHA.3040@TK2MSFTNGP14.phx.gbl...
Bonjour !
Je cherche à ajouter à la macro suivante :
lorsque que l'on clique dans la colonne B (de la ligne 2 à 1999), on
rebondi
dans la ligne active dans la colonne C.
Par exemple : si je clique en B15, je me retrouve automatiquement en C15
si je clique en B264, je me retrouve automatiquement en C264.
--------------------------------------------------------------------------
--
------
Voici la macro en question (dans laquelle je cherche à ajouter) :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim ws As Worksheet
Set ws = ActiveSheet
Set plage = Union(Range("A2:A1999"), Range("C2:I1999"))
If ws.ProtectContents Then
ws.Unprotect "1234"
plage.Locked = True
ws.Protect "1234"
Else
plage.Locked = False
Application.EnableEvents = False
If Intersect(Target, plage) Is Nothing Then
Select Case Target.Row
Case 2000 To 2050
Range("A1999").Select
Case 1
Range("A2").Select
'partout ailleurs
Case Else
Range("A" & ActiveCell.Row).Select
End Select
End If
Application.EnableEvents = True
End If
End Sub
------------------------------------------------------------
Merci beaucoup pour votre aide
Caroline
Bonsoir.
Si j'ai tout compris, ajoute en fin de macro :
If Intersect(Target, Range("B2:B1999")) Is Nothing Then Exit Sub
Application.EnableEvents = False
Target.Offset(0, 1).Select
Application.EnableEvents = True
Cordialement.
Daniel
"Caroline L." a écrit dans le message de news:
%Bonjour !
Je cherche à ajouter à la macro suivante :
lorsque que l'on clique dans la colonne B (de la ligne 2 à 1999), on
rebondi
dans la ligne active dans la colonne C.
Par exemple : si je clique en B15, je me retrouve automatiquement en C15
si je clique en B264, je me retrouve automatiquement en C264.
--------------------------------------------------------------------------
--
------
Voici la macro en question (dans laquelle je cherche à ajouter) :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim ws As Worksheet
Set ws = ActiveSheet
Set plage = Union(Range("A2:A1999"), Range("C2:I1999"))
If ws.ProtectContents Then
ws.Unprotect "1234"
plage.Locked = True
ws.Protect "1234"
Else
plage.Locked = False
Application.EnableEvents = False
If Intersect(Target, plage) Is Nothing Then
Select Case Target.Row
Case 2000 To 2050
Range("A1999").Select
Case 1
Range("A2").Select
'partout ailleurs
Case Else
Range("A" & ActiveCell.Row).Select
End Select
End If
Application.EnableEvents = True
End If
End Sub
------------------------------------------------------------
Merci beaucoup pour votre aide
Caroline
Bonjour Daniel,
c'est parfait ! tout fonctionne très bien. Merci !
En m'inspirant de ce que tu me fourni, j'essaie d'ajouter lorsque je
clique
de J2:J1999, je rebondi dans la colonne A sur la ligne suivante. Donc,
j'ai
essayé avec ce qui suit mais ça ne marche pas. As-tu une idée de mon
erreur
?
Merci encore.
If Intersect(Target, Range("J2:J1999")) Is Nothing Then Exit Sub
Application.EnableEvents = False
Target.Offset(1, -10).Select
Application.EnableEvents = True
Caroline
"Daniel" a écrit dans le message de news:
#Bonsoir.
Si j'ai tout compris, ajoute en fin de macro :
If Intersect(Target, Range("B2:B1999")) Is Nothing Then Exit Sub
Application.EnableEvents = False
Target.Offset(0, 1).Select
Application.EnableEvents = True
Cordialement.
Daniel
"Caroline L." a écrit dans le message de news:
%Bonjour !
Je cherche à ajouter à la macro suivante :
lorsque que l'on clique dans la colonne B (de la ligne 2 à 1999), on
rebondi
dans la ligne active dans la colonne C.
Par exemple : si je clique en B15, je me retrouve automatiquement en
C15
si je clique en B264, je me retrouve automatiquement en C264.
--------------------------------------------------------------------------
--------
Voici la macro en question (dans laquelle je cherche à ajouter) :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim ws As Worksheet
Set ws = ActiveSheet
Set plage = Union(Range("A2:A1999"), Range("C2:I1999"))
If ws.ProtectContents Then
ws.Unprotect "1234"
plage.Locked = True
ws.Protect "1234"
Else
plage.Locked = False
Application.EnableEvents = False
If Intersect(Target, plage) Is Nothing Then
Select Case Target.Row
Case 2000 To 2050
Range("A1999").Select
Case 1
Range("A2").Select
'partout ailleurs
Case Else
Range("A" & ActiveCell.Row).Select
End Select
End If
Application.EnableEvents = True
End If
End Sub
------------------------------------------------------------
Merci beaucoup pour votre aide
Caroline
Bonjour Daniel,
c'est parfait ! tout fonctionne très bien. Merci !
En m'inspirant de ce que tu me fourni, j'essaie d'ajouter lorsque je
clique
de J2:J1999, je rebondi dans la colonne A sur la ligne suivante. Donc,
j'ai
essayé avec ce qui suit mais ça ne marche pas. As-tu une idée de mon
erreur
?
Merci encore.
If Intersect(Target, Range("J2:J1999")) Is Nothing Then Exit Sub
Application.EnableEvents = False
Target.Offset(1, -10).Select
Application.EnableEvents = True
Caroline
"Daniel" <dZZZcolardelle@free.fr> a écrit dans le message de news:
#580Ic3bFHA.2420@TK2MSFTNGP12.phx.gbl...
Bonsoir.
Si j'ai tout compris, ajoute en fin de macro :
If Intersect(Target, Range("B2:B1999")) Is Nothing Then Exit Sub
Application.EnableEvents = False
Target.Offset(0, 1).Select
Application.EnableEvents = True
Cordialement.
Daniel
"Caroline L." <caroland@videotron.ca> a écrit dans le message de news:
%23lOJ1K3bFHA.3040@TK2MSFTNGP14.phx.gbl...
Bonjour !
Je cherche à ajouter à la macro suivante :
lorsque que l'on clique dans la colonne B (de la ligne 2 à 1999), on
rebondi
dans la ligne active dans la colonne C.
Par exemple : si je clique en B15, je me retrouve automatiquement en
C15
si je clique en B264, je me retrouve automatiquement en C264.
--------------------------------------------------------------------------
--
------
Voici la macro en question (dans laquelle je cherche à ajouter) :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim ws As Worksheet
Set ws = ActiveSheet
Set plage = Union(Range("A2:A1999"), Range("C2:I1999"))
If ws.ProtectContents Then
ws.Unprotect "1234"
plage.Locked = True
ws.Protect "1234"
Else
plage.Locked = False
Application.EnableEvents = False
If Intersect(Target, plage) Is Nothing Then
Select Case Target.Row
Case 2000 To 2050
Range("A1999").Select
Case 1
Range("A2").Select
'partout ailleurs
Case Else
Range("A" & ActiveCell.Row).Select
End Select
End If
Application.EnableEvents = True
End If
End Sub
------------------------------------------------------------
Merci beaucoup pour votre aide
Caroline
Bonjour Daniel,
c'est parfait ! tout fonctionne très bien. Merci !
En m'inspirant de ce que tu me fourni, j'essaie d'ajouter lorsque je
clique
de J2:J1999, je rebondi dans la colonne A sur la ligne suivante. Donc,
j'ai
essayé avec ce qui suit mais ça ne marche pas. As-tu une idée de mon
erreur
?
Merci encore.
If Intersect(Target, Range("J2:J1999")) Is Nothing Then Exit Sub
Application.EnableEvents = False
Target.Offset(1, -10).Select
Application.EnableEvents = True
Caroline
"Daniel" a écrit dans le message de news:
#Bonsoir.
Si j'ai tout compris, ajoute en fin de macro :
If Intersect(Target, Range("B2:B1999")) Is Nothing Then Exit Sub
Application.EnableEvents = False
Target.Offset(0, 1).Select
Application.EnableEvents = True
Cordialement.
Daniel
"Caroline L." a écrit dans le message de news:
%Bonjour !
Je cherche à ajouter à la macro suivante :
lorsque que l'on clique dans la colonne B (de la ligne 2 à 1999), on
rebondi
dans la ligne active dans la colonne C.
Par exemple : si je clique en B15, je me retrouve automatiquement en
C15
si je clique en B264, je me retrouve automatiquement en C264.
--------------------------------------------------------------------------
--------
Voici la macro en question (dans laquelle je cherche à ajouter) :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim ws As Worksheet
Set ws = ActiveSheet
Set plage = Union(Range("A2:A1999"), Range("C2:I1999"))
If ws.ProtectContents Then
ws.Unprotect "1234"
plage.Locked = True
ws.Protect "1234"
Else
plage.Locked = False
Application.EnableEvents = False
If Intersect(Target, plage) Is Nothing Then
Select Case Target.Row
Case 2000 To 2050
Range("A1999").Select
Case 1
Range("A2").Select
'partout ailleurs
Case Else
Range("A" & ActiveCell.Row).Select
End Select
End If
Application.EnableEvents = True
End If
End Sub
------------------------------------------------------------
Merci beaucoup pour votre aide
Caroline
Oui, car si tu as ajouté ton code après le mien, si tu cliques hors de la
plage B2:B1999, tu sors de la macro; c'est le sens de :
If Intersect(Target, Range("B2:B1999")) Is Nothing Then Exit Sub
Egalement c'est Offset(0, -9) qu'il faut mettre. Essaie donc :
If Intersect(Target, Range("B2:B1999")) Is Nothing And _
Intersect(Target, Range("J2:J1999")) Is Nothing Then Exit Sub
Application.EnableEvents = False
If Target.Column = 2 Then
Target.Offset(0, 1).Select
Else
Target.Offset(0, -9).Select
End If
Application.EnableEvents = True
Cordialement.
Daniel
"Caroline L." a écrit dans le message de news:Bonjour Daniel,
c'est parfait ! tout fonctionne très bien. Merci !
En m'inspirant de ce que tu me fourni, j'essaie d'ajouter lorsque je
clique
de J2:J1999, je rebondi dans la colonne A sur la ligne suivante. Donc,
j'ai
essayé avec ce qui suit mais ça ne marche pas. As-tu une idée de mon
erreur
?
Merci encore.
If Intersect(Target, Range("J2:J1999")) Is Nothing Then Exit Sub
Application.EnableEvents = False
Target.Offset(1, -10).Select
Application.EnableEvents = True
Caroline
"Daniel" a écrit dans le message de news:
#Bonsoir.
Si j'ai tout compris, ajoute en fin de macro :
If Intersect(Target, Range("B2:B1999")) Is Nothing Then Exit Sub
Application.EnableEvents = False
Target.Offset(0, 1).Select
Application.EnableEvents = True
Cordialement.
Daniel
"Caroline L." a écrit dans le message de news:
%Bonjour !
Je cherche à ajouter à la macro suivante :
lorsque que l'on clique dans la colonne B (de la ligne 2 à 1999), on
rebondi
dans la ligne active dans la colonne C.
Par exemple : si je clique en B15, je me retrouve automatiquement en
C15
si je clique en B264, je me retrouve automatiquement en C264.
-------------------------------------------------------------------------
-
--------
Voici la macro en question (dans laquelle je cherche à ajouter) :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim ws As Worksheet
Set ws = ActiveSheet
Set plage = Union(Range("A2:A1999"), Range("C2:I1999"))
If ws.ProtectContents Then
ws.Unprotect "1234"
plage.Locked = True
ws.Protect "1234"
Else
plage.Locked = False
Application.EnableEvents = False
If Intersect(Target, plage) Is Nothing Then
Select Case Target.Row
Case 2000 To 2050
Range("A1999").Select
Case 1
Range("A2").Select
'partout ailleurs
Case Else
Range("A" & ActiveCell.Row).Select
End Select
End If
Application.EnableEvents = True
End If
End Sub
------------------------------------------------------------
Merci beaucoup pour votre aide
Caroline
Oui, car si tu as ajouté ton code après le mien, si tu cliques hors de la
plage B2:B1999, tu sors de la macro; c'est le sens de :
If Intersect(Target, Range("B2:B1999")) Is Nothing Then Exit Sub
Egalement c'est Offset(0, -9) qu'il faut mettre. Essaie donc :
If Intersect(Target, Range("B2:B1999")) Is Nothing And _
Intersect(Target, Range("J2:J1999")) Is Nothing Then Exit Sub
Application.EnableEvents = False
If Target.Column = 2 Then
Target.Offset(0, 1).Select
Else
Target.Offset(0, -9).Select
End If
Application.EnableEvents = True
Cordialement.
Daniel
"Caroline L." <caroland@videotron.ca> a écrit dans le message de news:
uML5ns3bFHA.3328@TK2MSFTNGP09.phx.gbl...
Bonjour Daniel,
c'est parfait ! tout fonctionne très bien. Merci !
En m'inspirant de ce que tu me fourni, j'essaie d'ajouter lorsque je
clique
de J2:J1999, je rebondi dans la colonne A sur la ligne suivante. Donc,
j'ai
essayé avec ce qui suit mais ça ne marche pas. As-tu une idée de mon
erreur
?
Merci encore.
If Intersect(Target, Range("J2:J1999")) Is Nothing Then Exit Sub
Application.EnableEvents = False
Target.Offset(1, -10).Select
Application.EnableEvents = True
Caroline
"Daniel" <dZZZcolardelle@free.fr> a écrit dans le message de news:
#580Ic3bFHA.2420@TK2MSFTNGP12.phx.gbl...
Bonsoir.
Si j'ai tout compris, ajoute en fin de macro :
If Intersect(Target, Range("B2:B1999")) Is Nothing Then Exit Sub
Application.EnableEvents = False
Target.Offset(0, 1).Select
Application.EnableEvents = True
Cordialement.
Daniel
"Caroline L." <caroland@videotron.ca> a écrit dans le message de news:
%23lOJ1K3bFHA.3040@TK2MSFTNGP14.phx.gbl...
Bonjour !
Je cherche à ajouter à la macro suivante :
lorsque que l'on clique dans la colonne B (de la ligne 2 à 1999), on
rebondi
dans la ligne active dans la colonne C.
Par exemple : si je clique en B15, je me retrouve automatiquement en
C15
si je clique en B264, je me retrouve automatiquement en C264.
-------------------------------------------------------------------------
-
--
------
Voici la macro en question (dans laquelle je cherche à ajouter) :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim ws As Worksheet
Set ws = ActiveSheet
Set plage = Union(Range("A2:A1999"), Range("C2:I1999"))
If ws.ProtectContents Then
ws.Unprotect "1234"
plage.Locked = True
ws.Protect "1234"
Else
plage.Locked = False
Application.EnableEvents = False
If Intersect(Target, plage) Is Nothing Then
Select Case Target.Row
Case 2000 To 2050
Range("A1999").Select
Case 1
Range("A2").Select
'partout ailleurs
Case Else
Range("A" & ActiveCell.Row).Select
End Select
End If
Application.EnableEvents = True
End If
End Sub
------------------------------------------------------------
Merci beaucoup pour votre aide
Caroline
Oui, car si tu as ajouté ton code après le mien, si tu cliques hors de la
plage B2:B1999, tu sors de la macro; c'est le sens de :
If Intersect(Target, Range("B2:B1999")) Is Nothing Then Exit Sub
Egalement c'est Offset(0, -9) qu'il faut mettre. Essaie donc :
If Intersect(Target, Range("B2:B1999")) Is Nothing And _
Intersect(Target, Range("J2:J1999")) Is Nothing Then Exit Sub
Application.EnableEvents = False
If Target.Column = 2 Then
Target.Offset(0, 1).Select
Else
Target.Offset(0, -9).Select
End If
Application.EnableEvents = True
Cordialement.
Daniel
"Caroline L." a écrit dans le message de news:Bonjour Daniel,
c'est parfait ! tout fonctionne très bien. Merci !
En m'inspirant de ce que tu me fourni, j'essaie d'ajouter lorsque je
clique
de J2:J1999, je rebondi dans la colonne A sur la ligne suivante. Donc,
j'ai
essayé avec ce qui suit mais ça ne marche pas. As-tu une idée de mon
erreur
?
Merci encore.
If Intersect(Target, Range("J2:J1999")) Is Nothing Then Exit Sub
Application.EnableEvents = False
Target.Offset(1, -10).Select
Application.EnableEvents = True
Caroline
"Daniel" a écrit dans le message de news:
#Bonsoir.
Si j'ai tout compris, ajoute en fin de macro :
If Intersect(Target, Range("B2:B1999")) Is Nothing Then Exit Sub
Application.EnableEvents = False
Target.Offset(0, 1).Select
Application.EnableEvents = True
Cordialement.
Daniel
"Caroline L." a écrit dans le message de news:
%Bonjour !
Je cherche à ajouter à la macro suivante :
lorsque que l'on clique dans la colonne B (de la ligne 2 à 1999), on
rebondi
dans la ligne active dans la colonne C.
Par exemple : si je clique en B15, je me retrouve automatiquement en
C15
si je clique en B264, je me retrouve automatiquement en C264.
-------------------------------------------------------------------------
-
--------
Voici la macro en question (dans laquelle je cherche à ajouter) :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim ws As Worksheet
Set ws = ActiveSheet
Set plage = Union(Range("A2:A1999"), Range("C2:I1999"))
If ws.ProtectContents Then
ws.Unprotect "1234"
plage.Locked = True
ws.Protect "1234"
Else
plage.Locked = False
Application.EnableEvents = False
If Intersect(Target, plage) Is Nothing Then
Select Case Target.Row
Case 2000 To 2050
Range("A1999").Select
Case 1
Range("A2").Select
'partout ailleurs
Case Else
Range("A" & ActiveCell.Row).Select
End Select
End If
Application.EnableEvents = True
End If
End Sub
------------------------------------------------------------
Merci beaucoup pour votre aide
Caroline
Re,
oui d'accord je comprends et ça fonctionne.... merci.
Dernière petite chose : lorsque j'essaie de sélectionner toute la feuille,
la macro s'arrête et si je clique sur Débogage, la ligne suivante est en
jaune :
Target.Offset(0, -9).Select
Comment puis-je contourner ? Il est vraiment important que je puisse
"sélectionner tout".
Merci
"Daniel" a écrit dans le message de news:
#Oui, car si tu as ajouté ton code après le mien, si tu cliques hors de la
plage B2:B1999, tu sors de la macro; c'est le sens de :
If Intersect(Target, Range("B2:B1999")) Is Nothing Then Exit Sub
Egalement c'est Offset(0, -9) qu'il faut mettre. Essaie donc :
If Intersect(Target, Range("B2:B1999")) Is Nothing And _
Intersect(Target, Range("J2:J1999")) Is Nothing Then Exit Sub
Application.EnableEvents = False
If Target.Column = 2 Then
Target.Offset(0, 1).Select
Else
Target.Offset(0, -9).Select
End If
Application.EnableEvents = True
Cordialement.
Daniel
"Caroline L." a écrit dans le message de news:Bonjour Daniel,
c'est parfait ! tout fonctionne très bien. Merci !
En m'inspirant de ce que tu me fourni, j'essaie d'ajouter lorsque je
clique
de J2:J1999, je rebondi dans la colonne A sur la ligne suivante. Donc,
j'ai
essayé avec ce qui suit mais ça ne marche pas. As-tu une idée de mon
erreur
?
Merci encore.
If Intersect(Target, Range("J2:J1999")) Is Nothing Then Exit Sub
Application.EnableEvents = False
Target.Offset(1, -10).Select
Application.EnableEvents = True
Caroline
"Daniel" a écrit dans le message de news:
#Bonsoir.
Si j'ai tout compris, ajoute en fin de macro :
If Intersect(Target, Range("B2:B1999")) Is Nothing Then Exit Sub
Application.EnableEvents = False
Target.Offset(0, 1).Select
Application.EnableEvents = True
Cordialement.
Daniel
"Caroline L." a écrit dans le message de news:
%Bonjour !
Je cherche à ajouter à la macro suivante :
lorsque que l'on clique dans la colonne B (de la ligne 2 à 1999), on
rebondi
dans la ligne active dans la colonne C.
Par exemple : si je clique en B15, je me retrouve automatiquement en
C15
si je clique en B264, je me retrouve automatiquement en C264.
-------------------------------------------------------------------------
---------
Voici la macro en question (dans laquelle je cherche à ajouter) :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim ws As Worksheet
Set ws = ActiveSheet
Set plage = Union(Range("A2:A1999"), Range("C2:I1999"))
If ws.ProtectContents Then
ws.Unprotect "1234"
plage.Locked = True
ws.Protect "1234"
Else
plage.Locked = False
Application.EnableEvents = False
If Intersect(Target, plage) Is Nothing Then
Select Case Target.Row
Case 2000 To 2050
Range("A1999").Select
Case 1
Range("A2").Select
'partout ailleurs
Case Else
Range("A" & ActiveCell.Row).Select
End Select
End If
Application.EnableEvents = True
End If
End Sub
------------------------------------------------------------
Merci beaucoup pour votre aide
Caroline
Re,
oui d'accord je comprends et ça fonctionne.... merci.
Dernière petite chose : lorsque j'essaie de sélectionner toute la feuille,
la macro s'arrête et si je clique sur Débogage, la ligne suivante est en
jaune :
Target.Offset(0, -9).Select
Comment puis-je contourner ? Il est vraiment important que je puisse
"sélectionner tout".
Merci
"Daniel" <dZZZcolardelle@free.fr> a écrit dans le message de news:
#8dBHG5bFHA.2960@TK2MSFTNGP09.phx.gbl...
Oui, car si tu as ajouté ton code après le mien, si tu cliques hors de la
plage B2:B1999, tu sors de la macro; c'est le sens de :
If Intersect(Target, Range("B2:B1999")) Is Nothing Then Exit Sub
Egalement c'est Offset(0, -9) qu'il faut mettre. Essaie donc :
If Intersect(Target, Range("B2:B1999")) Is Nothing And _
Intersect(Target, Range("J2:J1999")) Is Nothing Then Exit Sub
Application.EnableEvents = False
If Target.Column = 2 Then
Target.Offset(0, 1).Select
Else
Target.Offset(0, -9).Select
End If
Application.EnableEvents = True
Cordialement.
Daniel
"Caroline L." <caroland@videotron.ca> a écrit dans le message de news:
uML5ns3bFHA.3328@TK2MSFTNGP09.phx.gbl...
Bonjour Daniel,
c'est parfait ! tout fonctionne très bien. Merci !
En m'inspirant de ce que tu me fourni, j'essaie d'ajouter lorsque je
clique
de J2:J1999, je rebondi dans la colonne A sur la ligne suivante. Donc,
j'ai
essayé avec ce qui suit mais ça ne marche pas. As-tu une idée de mon
erreur
?
Merci encore.
If Intersect(Target, Range("J2:J1999")) Is Nothing Then Exit Sub
Application.EnableEvents = False
Target.Offset(1, -10).Select
Application.EnableEvents = True
Caroline
"Daniel" <dZZZcolardelle@free.fr> a écrit dans le message de news:
#580Ic3bFHA.2420@TK2MSFTNGP12.phx.gbl...
Bonsoir.
Si j'ai tout compris, ajoute en fin de macro :
If Intersect(Target, Range("B2:B1999")) Is Nothing Then Exit Sub
Application.EnableEvents = False
Target.Offset(0, 1).Select
Application.EnableEvents = True
Cordialement.
Daniel
"Caroline L." <caroland@videotron.ca> a écrit dans le message de news:
%23lOJ1K3bFHA.3040@TK2MSFTNGP14.phx.gbl...
Bonjour !
Je cherche à ajouter à la macro suivante :
lorsque que l'on clique dans la colonne B (de la ligne 2 à 1999), on
rebondi
dans la ligne active dans la colonne C.
Par exemple : si je clique en B15, je me retrouve automatiquement en
C15
si je clique en B264, je me retrouve automatiquement en C264.
-------------------------------------------------------------------------
-
--
------
Voici la macro en question (dans laquelle je cherche à ajouter) :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim ws As Worksheet
Set ws = ActiveSheet
Set plage = Union(Range("A2:A1999"), Range("C2:I1999"))
If ws.ProtectContents Then
ws.Unprotect "1234"
plage.Locked = True
ws.Protect "1234"
Else
plage.Locked = False
Application.EnableEvents = False
If Intersect(Target, plage) Is Nothing Then
Select Case Target.Row
Case 2000 To 2050
Range("A1999").Select
Case 1
Range("A2").Select
'partout ailleurs
Case Else
Range("A" & ActiveCell.Row).Select
End Select
End If
Application.EnableEvents = True
End If
End Sub
------------------------------------------------------------
Merci beaucoup pour votre aide
Caroline
Re,
oui d'accord je comprends et ça fonctionne.... merci.
Dernière petite chose : lorsque j'essaie de sélectionner toute la feuille,
la macro s'arrête et si je clique sur Débogage, la ligne suivante est en
jaune :
Target.Offset(0, -9).Select
Comment puis-je contourner ? Il est vraiment important que je puisse
"sélectionner tout".
Merci
"Daniel" a écrit dans le message de news:
#Oui, car si tu as ajouté ton code après le mien, si tu cliques hors de la
plage B2:B1999, tu sors de la macro; c'est le sens de :
If Intersect(Target, Range("B2:B1999")) Is Nothing Then Exit Sub
Egalement c'est Offset(0, -9) qu'il faut mettre. Essaie donc :
If Intersect(Target, Range("B2:B1999")) Is Nothing And _
Intersect(Target, Range("J2:J1999")) Is Nothing Then Exit Sub
Application.EnableEvents = False
If Target.Column = 2 Then
Target.Offset(0, 1).Select
Else
Target.Offset(0, -9).Select
End If
Application.EnableEvents = True
Cordialement.
Daniel
"Caroline L." a écrit dans le message de news:Bonjour Daniel,
c'est parfait ! tout fonctionne très bien. Merci !
En m'inspirant de ce que tu me fourni, j'essaie d'ajouter lorsque je
clique
de J2:J1999, je rebondi dans la colonne A sur la ligne suivante. Donc,
j'ai
essayé avec ce qui suit mais ça ne marche pas. As-tu une idée de mon
erreur
?
Merci encore.
If Intersect(Target, Range("J2:J1999")) Is Nothing Then Exit Sub
Application.EnableEvents = False
Target.Offset(1, -10).Select
Application.EnableEvents = True
Caroline
"Daniel" a écrit dans le message de news:
#Bonsoir.
Si j'ai tout compris, ajoute en fin de macro :
If Intersect(Target, Range("B2:B1999")) Is Nothing Then Exit Sub
Application.EnableEvents = False
Target.Offset(0, 1).Select
Application.EnableEvents = True
Cordialement.
Daniel
"Caroline L." a écrit dans le message de news:
%Bonjour !
Je cherche à ajouter à la macro suivante :
lorsque que l'on clique dans la colonne B (de la ligne 2 à 1999), on
rebondi
dans la ligne active dans la colonne C.
Par exemple : si je clique en B15, je me retrouve automatiquement en
C15
si je clique en B264, je me retrouve automatiquement en C264.
-------------------------------------------------------------------------
---------
Voici la macro en question (dans laquelle je cherche à ajouter) :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim ws As Worksheet
Set ws = ActiveSheet
Set plage = Union(Range("A2:A1999"), Range("C2:I1999"))
If ws.ProtectContents Then
ws.Unprotect "1234"
plage.Locked = True
ws.Protect "1234"
Else
plage.Locked = False
Application.EnableEvents = False
If Intersect(Target, plage) Is Nothing Then
Select Case Target.Row
Case 2000 To 2050
Range("A1999").Select
Case 1
Range("A2").Select
'partout ailleurs
Case Else
Range("A" & ActiveCell.Row).Select
End Select
End If
Application.EnableEvents = True
End If
End Sub
------------------------------------------------------------
Merci beaucoup pour votre aide
Caroline