Je voudrais qu'il ne soit pas possible pour un usager d'=E9crire dans la
cellule B1 =E0 B15 si dans la cellule adjacente (soit A1 =E0 A15) il n'y
est pas inscrit la lettre Y.....
Je pr=E9sume que c'est dans le...
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
que l'on doit commencer....
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
For Each cell In Range("B1:B15")
If ActiveCell.Offset(, -1).Value <> Y Then cell.Value =3D ""
Next cell
End Sub
Sauf que tout s'efface tout le temps..... Dans la plage A1:A15,
l'usager ne peut choisir qu'entre Y ou N avec une bande d=E9roulante
(Data Validation, List)
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
MichDenis
Essaie ceci :
Private Sub Worksheet_Change(ByVal Target As Range) Dim Rg As Range Set Rg = Intersect(Range("A1:B15"), Target) If Not Rg Is Nothing Then Application.EnableEvents = False For Each C In Rg Select Case C.Column Case 1 If UCase(C.Offset(, 1).Value) <> "Y" Then C.Value = "" End If Case 2 If UCase(C.Value) <> "Y" Then C.Offset(, -1).Value = "" End If End Select Application.EnableEvents = True Next End If End Sub
"Denys" a écrit dans le message de news:
Bonjour à tous,
Je voudrais qu'il ne soit pas possible pour un usager d'écrire dans la cellule B1 à B15 si dans la cellule adjacente (soit A1 à A15) il n'y est pas inscrit la lettre Y.....
Je présume que c'est dans le...
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
que l'on doit commencer....
Private Sub Worksheet_SelectionChange(ByVal Target As Range) For Each cell In Range("B1:B15") If ActiveCell.Offset(, -1).Value <> Y Then cell.Value = "" Next cell End Sub
Sauf que tout s'efface tout le temps..... Dans la plage A1:A15, l'usager ne peut choisir qu'entre Y ou N avec une bande déroulante (Data Validation, List)
Ou est-ce que je me trompe ?
Merci
Denys
Essaie ceci :
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Rg As Range
Set Rg = Intersect(Range("A1:B15"), Target)
If Not Rg Is Nothing Then
Application.EnableEvents = False
For Each C In Rg
Select Case C.Column
Case 1
If UCase(C.Offset(, 1).Value) <> "Y" Then
C.Value = ""
End If
Case 2
If UCase(C.Value) <> "Y" Then
C.Offset(, -1).Value = ""
End If
End Select
Application.EnableEvents = True
Next
End If
End Sub
"Denys" <denys.perreault@rbc.com> a écrit dans le message de news:
1164916107.241561.216430@n67g2000cwd.googlegroups.com...
Bonjour à tous,
Je voudrais qu'il ne soit pas possible pour un usager d'écrire dans la
cellule B1 à B15 si dans la cellule adjacente (soit A1 à A15) il n'y
est pas inscrit la lettre Y.....
Je présume que c'est dans le...
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
que l'on doit commencer....
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
For Each cell In Range("B1:B15")
If ActiveCell.Offset(, -1).Value <> Y Then cell.Value = ""
Next cell
End Sub
Sauf que tout s'efface tout le temps..... Dans la plage A1:A15,
l'usager ne peut choisir qu'entre Y ou N avec une bande déroulante
(Data Validation, List)
Private Sub Worksheet_Change(ByVal Target As Range) Dim Rg As Range Set Rg = Intersect(Range("A1:B15"), Target) If Not Rg Is Nothing Then Application.EnableEvents = False For Each C In Rg Select Case C.Column Case 1 If UCase(C.Offset(, 1).Value) <> "Y" Then C.Value = "" End If Case 2 If UCase(C.Value) <> "Y" Then C.Offset(, -1).Value = "" End If End Select Application.EnableEvents = True Next End If End Sub
"Denys" a écrit dans le message de news:
Bonjour à tous,
Je voudrais qu'il ne soit pas possible pour un usager d'écrire dans la cellule B1 à B15 si dans la cellule adjacente (soit A1 à A15) il n'y est pas inscrit la lettre Y.....
Je présume que c'est dans le...
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
que l'on doit commencer....
Private Sub Worksheet_SelectionChange(ByVal Target As Range) For Each cell In Range("B1:B15") If ActiveCell.Offset(, -1).Value <> Y Then cell.Value = "" Next cell End Sub
Sauf que tout s'efface tout le temps..... Dans la plage A1:A15, l'usager ne peut choisir qu'entre Y ou N avec une bande déroulante (Data Validation, List)
Ou est-ce que je me trompe ?
Merci
Denys
RV
Bonsoir Denys, Essayer peut-être ceci
Private Sub Worksheet_SelectionChange(ByVal Target As Range) For x=1 to 15 If cells(x,1).Value <> Y Then cells(x,2).Value = "" Next x End Sub
Bonne soirée RV
"Denys" a écrit dans le message de news:
Bonjour à tous,
Je voudrais qu'il ne soit pas possible pour un usager d'écrire dans la cellule B1 à B15 si dans la cellule adjacente (soit A1 à A15) il n'y est pas inscrit la lettre Y.....
Je présume que c'est dans le...
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
que l'on doit commencer....
Private Sub Worksheet_SelectionChange(ByVal Target As Range) For Each cell In Range("B1:B15") If ActiveCell.Offset(, -1).Value <> Y Then cell.Value = "" Next cell End Sub
Sauf que tout s'efface tout le temps..... Dans la plage A1:A15, l'usager ne peut choisir qu'entre Y ou N avec une bande déroulante (Data Validation, List)
Ou est-ce que je me trompe ?
Merci
Denys
Bonsoir Denys,
Essayer peut-être ceci
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
For x=1 to 15
If cells(x,1).Value <> Y Then cells(x,2).Value = ""
Next x
End Sub
Bonne soirée
RV
"Denys" <denys.perreault@rbc.com> a écrit dans le message de news:
1164916107.241561.216430@n67g2000cwd.googlegroups.com...
Bonjour à tous,
Je voudrais qu'il ne soit pas possible pour un usager d'écrire dans la
cellule B1 à B15 si dans la cellule adjacente (soit A1 à A15) il n'y
est pas inscrit la lettre Y.....
Je présume que c'est dans le...
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
que l'on doit commencer....
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
For Each cell In Range("B1:B15")
If ActiveCell.Offset(, -1).Value <> Y Then cell.Value = ""
Next cell
End Sub
Sauf que tout s'efface tout le temps..... Dans la plage A1:A15,
l'usager ne peut choisir qu'entre Y ou N avec une bande déroulante
(Data Validation, List)
Private Sub Worksheet_SelectionChange(ByVal Target As Range) For x=1 to 15 If cells(x,1).Value <> Y Then cells(x,2).Value = "" Next x End Sub
Bonne soirée RV
"Denys" a écrit dans le message de news:
Bonjour à tous,
Je voudrais qu'il ne soit pas possible pour un usager d'écrire dans la cellule B1 à B15 si dans la cellule adjacente (soit A1 à A15) il n'y est pas inscrit la lettre Y.....
Je présume que c'est dans le...
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
que l'on doit commencer....
Private Sub Worksheet_SelectionChange(ByVal Target As Range) For Each cell In Range("B1:B15") If ActiveCell.Offset(, -1).Value <> Y Then cell.Value = "" Next cell End Sub
Sauf que tout s'efface tout le temps..... Dans la plage A1:A15, l'usager ne peut choisir qu'entre Y ou N avec une bande déroulante (Data Validation, List)
Ou est-ce que je me trompe ?
Merci
Denys
Michel Pierron
Bonsoir Denys;
With Target If .Column <> 2 Then Exit Sub If .Row > 15 Then Exit Sub If .Offset(0, -1) <> "Y" Then .Value = "" .Offset(0, 1).Activate End If
MP
"Denys" a écrit dans le message de news:
Bonjour à tous,
Je voudrais qu'il ne soit pas possible pour un usager d'écrire dans la cellule B1 à B15 si dans la cellule adjacente (soit A1 à A15) il n'y est pas inscrit la lettre Y.....
Je présume que c'est dans le...
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
que l'on doit commencer....
Private Sub Worksheet_SelectionChange(ByVal Target As Range) For Each cell In Range("B1:B15") If ActiveCell.Offset(, -1).Value <> Y Then cell.Value = "" Next cell End Sub
Sauf que tout s'efface tout le temps..... Dans la plage A1:A15, l'usager ne peut choisir qu'entre Y ou N avec une bande déroulante (Data Validation, List)
Ou est-ce que je me trompe ?
Merci
Denys
Bonsoir Denys;
With Target
If .Column <> 2 Then Exit Sub
If .Row > 15 Then Exit Sub
If .Offset(0, -1) <> "Y" Then
.Value = ""
.Offset(0, 1).Activate
End If
MP
"Denys" <denys.perreault@rbc.com> a écrit dans le message de news:
1164916107.241561.216430@n67g2000cwd.googlegroups.com...
Bonjour à tous,
Je voudrais qu'il ne soit pas possible pour un usager d'écrire dans la
cellule B1 à B15 si dans la cellule adjacente (soit A1 à A15) il n'y
est pas inscrit la lettre Y.....
Je présume que c'est dans le...
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
que l'on doit commencer....
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
For Each cell In Range("B1:B15")
If ActiveCell.Offset(, -1).Value <> Y Then cell.Value = ""
Next cell
End Sub
Sauf que tout s'efface tout le temps..... Dans la plage A1:A15,
l'usager ne peut choisir qu'entre Y ou N avec une bande déroulante
(Data Validation, List)
With Target If .Column <> 2 Then Exit Sub If .Row > 15 Then Exit Sub If .Offset(0, -1) <> "Y" Then .Value = "" .Offset(0, 1).Activate End If
MP
"Denys" a écrit dans le message de news:
Bonjour à tous,
Je voudrais qu'il ne soit pas possible pour un usager d'écrire dans la cellule B1 à B15 si dans la cellule adjacente (soit A1 à A15) il n'y est pas inscrit la lettre Y.....
Je présume que c'est dans le...
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
que l'on doit commencer....
Private Sub Worksheet_SelectionChange(ByVal Target As Range) For Each cell In Range("B1:B15") If ActiveCell.Offset(, -1).Value <> Y Then cell.Value = "" Next cell End Sub
Sauf que tout s'efface tout le temps..... Dans la plage A1:A15, l'usager ne peut choisir qu'entre Y ou N avec une bande déroulante (Data Validation, List)
Ou est-ce que je me trompe ?
Merci
Denys
DesseJ
ou encore
Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect([B1:B15], Target) Is Nothing And Target.Count = 1 Then Application.EnableEvents = False If Target.Offset(, -1).Value <> "Y" Then Target.Value = "" Application.EnableEvents = True End If End Sub
Steph. D.
ou encore
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect([B1:B15], Target) Is Nothing And Target.Count = 1
Then
Application.EnableEvents = False
If Target.Offset(, -1).Value <> "Y" Then Target.Value = ""
Application.EnableEvents = True
End If
End Sub
Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect([B1:B15], Target) Is Nothing And Target.Count = 1 Then Application.EnableEvents = False If Target.Offset(, -1).Value <> "Y" Then Target.Value = "" Application.EnableEvents = True End If End Sub
Steph. D.
RV
Denys, J'ai oublié les guillemets et de traiter les majuscule et les minuscules alors voici:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
For x = 1 To 15 If UCase(Cells(x, 1).Value) <> "Y" Then Cells(x, 2).Value = "" Next x
End Sub
Cordialement RV "Denys" a écrit dans le message de news:
Bonjour à tous,
Je voudrais qu'il ne soit pas possible pour un usager d'écrire dans la cellule B1 à B15 si dans la cellule adjacente (soit A1 à A15) il n'y est pas inscrit la lettre Y.....
Je présume que c'est dans le...
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
que l'on doit commencer....
Private Sub Worksheet_SelectionChange(ByVal Target As Range) For Each cell In Range("B1:B15") If ActiveCell.Offset(, -1).Value <> Y Then cell.Value = "" Next cell End Sub
Sauf que tout s'efface tout le temps..... Dans la plage A1:A15, l'usager ne peut choisir qu'entre Y ou N avec une bande déroulante (Data Validation, List)
Ou est-ce que je me trompe ?
Merci
Denys
Denys,
J'ai oublié les guillemets et de traiter les majuscule et les minuscules
alors voici:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
For x = 1 To 15
If UCase(Cells(x, 1).Value) <> "Y" Then Cells(x, 2).Value = ""
Next x
End Sub
Cordialement
RV
"Denys" <denys.perreault@rbc.com> a écrit dans le message de news:
1164916107.241561.216430@n67g2000cwd.googlegroups.com...
Bonjour à tous,
Je voudrais qu'il ne soit pas possible pour un usager d'écrire dans la
cellule B1 à B15 si dans la cellule adjacente (soit A1 à A15) il n'y
est pas inscrit la lettre Y.....
Je présume que c'est dans le...
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
que l'on doit commencer....
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
For Each cell In Range("B1:B15")
If ActiveCell.Offset(, -1).Value <> Y Then cell.Value = ""
Next cell
End Sub
Sauf que tout s'efface tout le temps..... Dans la plage A1:A15,
l'usager ne peut choisir qu'entre Y ou N avec une bande déroulante
(Data Validation, List)
Denys, J'ai oublié les guillemets et de traiter les majuscule et les minuscules alors voici:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
For x = 1 To 15 If UCase(Cells(x, 1).Value) <> "Y" Then Cells(x, 2).Value = "" Next x
End Sub
Cordialement RV "Denys" a écrit dans le message de news:
Bonjour à tous,
Je voudrais qu'il ne soit pas possible pour un usager d'écrire dans la cellule B1 à B15 si dans la cellule adjacente (soit A1 à A15) il n'y est pas inscrit la lettre Y.....
Je présume que c'est dans le...
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
que l'on doit commencer....
Private Sub Worksheet_SelectionChange(ByVal Target As Range) For Each cell In Range("B1:B15") If ActiveCell.Offset(, -1).Value <> Y Then cell.Value = "" Next cell End Sub
Sauf que tout s'efface tout le temps..... Dans la plage A1:A15, l'usager ne peut choisir qu'entre Y ou N avec une bande déroulante (Data Validation, List)
Ou est-ce que je me trompe ?
Merci
Denys
Denys
Bonsoir à tous,
WOW!!!!! merci beaucoup..... tant de réponses en si peu de temps !!!!
Très aimable, bonne fin de semaine, j'apprécie vraiment !!!
Denys
Bonsoir à tous,
WOW!!!!! merci beaucoup..... tant de réponses en si peu de temps
!!!!
Très aimable, bonne fin de semaine, j'apprécie vraiment !!!
WOW!!!!! merci beaucoup..... tant de réponses en si peu de temps !!!!
Très aimable, bonne fin de semaine, j'apprécie vraiment !!!
Denys
JB
Bonsoir,
Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Range("A1:A15"), Target) Is Nothing And Target.Count = 1 Then Application.EnableEvents = False If UCase(Target.Offset(0, 1)) <> "Y" Then Target = Empty Application.EnableEvents = True End If End Sub
JB
Bonjour à tous,
Je voudrais qu'il ne soit pas possible pour un usager d'écrire dans la cellule B1 à B15 si dans la cellule adjacente (soit A1 à A15) il n'y est pas inscrit la lettre Y.....
Je présume que c'est dans le...
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
que l'on doit commencer....
Private Sub Worksheet_SelectionChange(ByVal Target As Range) For Each cell In Range("B1:B15") If ActiveCell.Offset(, -1).Value <> Y Then cell.Value = "" Next cell End Sub
Sauf que tout s'efface tout le temps..... Dans la plage A1:A15, l'usager ne peut choisir qu'entre Y ou N avec une bande déroulante (Data Validation, List)
Ou est-ce que je me trompe ?
Merci
Denys
Bonsoir,
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Range("A1:A15"), Target) Is Nothing And Target.Count
= 1 Then
Application.EnableEvents = False
If UCase(Target.Offset(0, 1)) <> "Y" Then Target = Empty
Application.EnableEvents = True
End If
End Sub
JB
Bonjour à tous,
Je voudrais qu'il ne soit pas possible pour un usager d'écrire dans la
cellule B1 à B15 si dans la cellule adjacente (soit A1 à A15) il n'y
est pas inscrit la lettre Y.....
Je présume que c'est dans le...
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
que l'on doit commencer....
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
For Each cell In Range("B1:B15")
If ActiveCell.Offset(, -1).Value <> Y Then cell.Value = ""
Next cell
End Sub
Sauf que tout s'efface tout le temps..... Dans la plage A1:A15,
l'usager ne peut choisir qu'entre Y ou N avec une bande déroulante
(Data Validation, List)
Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Range("A1:A15"), Target) Is Nothing And Target.Count = 1 Then Application.EnableEvents = False If UCase(Target.Offset(0, 1)) <> "Y" Then Target = Empty Application.EnableEvents = True End If End Sub
JB
Bonjour à tous,
Je voudrais qu'il ne soit pas possible pour un usager d'écrire dans la cellule B1 à B15 si dans la cellule adjacente (soit A1 à A15) il n'y est pas inscrit la lettre Y.....
Je présume que c'est dans le...
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
que l'on doit commencer....
Private Sub Worksheet_SelectionChange(ByVal Target As Range) For Each cell In Range("B1:B15") If ActiveCell.Offset(, -1).Value <> Y Then cell.Value = "" Next cell End Sub
Sauf que tout s'efface tout le temps..... Dans la plage A1:A15, l'usager ne peut choisir qu'entre Y ou N avec une bande déroulante (Data Validation, List)
Ou est-ce que je me trompe ?
Merci
Denys
lSteph
Bonsoir, Donc si au moins une cellule dans la plage que l'on essaie de sélectionner ne dispose pas d'un y inscrit dedans on est viré en a1.
Private Sub Worksheet_SelectionChange(ByVal Target As Range) Set isect = Intersect(Target, [b1:b15]) If isect Is Nothing Then Exit Sub For Each c In isect.Cells If Not LCase(c.Offset(0, -1).Text) Like ("*y*") Then [a1].Select End If Next End Sub
'Cdlt.
'lSteph
Denys avait prétendu :
Bonjour à tous,
Je voudrais qu'il ne soit pas possible pour un usager d'écrire dans la cellule B1 à B15 si dans la cellule adjacente (soit A1 à A15) il n'y est pas inscrit la lettre Y.....
Je présume que c'est dans le...
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
que l'on doit commencer....
Private Sub Worksheet_SelectionChange(ByVal Target As Range) For Each cell In Range("B1:B15") If ActiveCell.Offset(, -1).Value <> Y Then cell.Value = "" Next cell End Sub
Sauf que tout s'efface tout le temps..... Dans la plage A1:A15, l'usager ne peut choisir qu'entre Y ou N avec une bande déroulante (Data Validation, List)
Ou est-ce que je me trompe ?
Merci
Denys
-- - -
Bonsoir,
Donc si au moins une cellule dans la plage que l'on essaie de
sélectionner ne dispose pas d'un y inscrit dedans on est viré en a1.
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Set isect = Intersect(Target, [b1:b15])
If isect Is Nothing Then Exit Sub
For Each c In isect.Cells
If Not LCase(c.Offset(0, -1).Text) Like ("*y*") Then
[a1].Select
End If
Next
End Sub
'Cdlt.
'lSteph
Denys avait prétendu :
Bonjour à tous,
Je voudrais qu'il ne soit pas possible pour un usager d'écrire dans la
cellule B1 à B15 si dans la cellule adjacente (soit A1 à A15) il n'y
est pas inscrit la lettre Y.....
Je présume que c'est dans le...
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
que l'on doit commencer....
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
For Each cell In Range("B1:B15")
If ActiveCell.Offset(, -1).Value <> Y Then cell.Value = ""
Next cell
End Sub
Sauf que tout s'efface tout le temps..... Dans la plage A1:A15,
l'usager ne peut choisir qu'entre Y ou N avec une bande déroulante
(Data Validation, List)
Bonsoir, Donc si au moins une cellule dans la plage que l'on essaie de sélectionner ne dispose pas d'un y inscrit dedans on est viré en a1.
Private Sub Worksheet_SelectionChange(ByVal Target As Range) Set isect = Intersect(Target, [b1:b15]) If isect Is Nothing Then Exit Sub For Each c In isect.Cells If Not LCase(c.Offset(0, -1).Text) Like ("*y*") Then [a1].Select End If Next End Sub
'Cdlt.
'lSteph
Denys avait prétendu :
Bonjour à tous,
Je voudrais qu'il ne soit pas possible pour un usager d'écrire dans la cellule B1 à B15 si dans la cellule adjacente (soit A1 à A15) il n'y est pas inscrit la lettre Y.....
Je présume que c'est dans le...
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
que l'on doit commencer....
Private Sub Worksheet_SelectionChange(ByVal Target As Range) For Each cell In Range("B1:B15") If ActiveCell.Offset(, -1).Value <> Y Then cell.Value = "" Next cell End Sub
Sauf que tout s'efface tout le temps..... Dans la plage A1:A15, l'usager ne peut choisir qu'entre Y ou N avec une bande déroulante (Data Validation, List)
Ou est-ce que je me trompe ?
Merci
Denys
-- - -
AV
Il me semble que....
Sélection de B1:B15 --> Données > Validation > Personnalisée > Formule :
¡="Y"
Décocher "Ignorer si vide" e
PS : Possibilité de mettre les messages d'alerte que l'on veut
AV
Il me semble que....
Sélection de B1:B15 --> Données > Validation > Personnalisée > Formule :
¡="Y"
Décocher "Ignorer si vide" e
PS : Possibilité de mettre les messages d'alerte que l'on veut