bonjour a toutes et a tous
voici mes 2 petits soucis :
j'ai une applicationavec 2 feuilles de calcul,une des formes
conditionnelles et l'autre est une feuille de calcul normal
1 : lorsque je selectionne une cellule, que j'y introduis une valeur
correcte, la cellule change de couleur (parfait)
mais lorsque je veux tirer sur la cellule(pour y mettre la valeur
incrementee) j'obtiens un message d'erreur. pourquoi ou est-ce normal ?
comment remedier a se premier souci ?.
2:sur l'autre feuille de la meme application, je voudrais que, si
j'introduis un valeur dans une cellule quelconque, celle-ci est
retransmise(ok) sur la premiere feuille (voir le premier probleme)et (et
c'est la le souci)que cette cellule change de couleur si la valeur
correspond a la formule conditionnelle.
Je suis toujours occupe a essayer certains"trucs" sur vba et c'est pour
cela qu'il y a 2 problemes bien distincts
j'espere etre clair et pour info voici mon code pour la mise en forme
conditionnelle si cela peut vous aider
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("b20:b40")) Is Nothing Then Exit Sub
If [Target] = "noir" Then
Target.Cells(1, 2).Interior.ColorIndex = 4 Exit Sub
End If
etc
end sub
bonne soiree
merci a l'avance pour vos precieuses aide
andree et romuald
bonjour a toutes et a tous
voici mes 2 petits soucis :
j'ai une applicationavec 2 feuilles de calcul,une des formes
conditionnelles et l'autre est une feuille de calcul normal
1 : lorsque je selectionne une cellule, que j'y introduis une valeur
correcte, la cellule change de couleur (parfait)
mais lorsque je veux tirer sur la cellule(pour y mettre la valeur
incrementee) j'obtiens un message d'erreur. pourquoi ou est-ce normal ?
comment remedier a se premier souci ?.
2:sur l'autre feuille de la meme application, je voudrais que, si
j'introduis un valeur dans une cellule quelconque, celle-ci est
retransmise(ok) sur la premiere feuille (voir le premier probleme)et (et
c'est la le souci)que cette cellule change de couleur si la valeur
correspond a la formule conditionnelle.
Je suis toujours occupe a essayer certains"trucs" sur vba et c'est pour
cela qu'il y a 2 problemes bien distincts
j'espere etre clair et pour info voici mon code pour la mise en forme
conditionnelle si cela peut vous aider
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("b20:b40")) Is Nothing Then Exit Sub
If [Target] = "noir" Then
Target.Cells(1, 2).Interior.ColorIndex = 4 Exit Sub
End If
etc
end sub
bonne soiree
merci a l'avance pour vos precieuses aide
andree et romuald
bonjour a toutes et a tous
voici mes 2 petits soucis :
j'ai une applicationavec 2 feuilles de calcul,une des formes
conditionnelles et l'autre est une feuille de calcul normal
1 : lorsque je selectionne une cellule, que j'y introduis une valeur
correcte, la cellule change de couleur (parfait)
mais lorsque je veux tirer sur la cellule(pour y mettre la valeur
incrementee) j'obtiens un message d'erreur. pourquoi ou est-ce normal ?
comment remedier a se premier souci ?.
2:sur l'autre feuille de la meme application, je voudrais que, si
j'introduis un valeur dans une cellule quelconque, celle-ci est
retransmise(ok) sur la premiere feuille (voir le premier probleme)et (et
c'est la le souci)que cette cellule change de couleur si la valeur
correspond a la formule conditionnelle.
Je suis toujours occupe a essayer certains"trucs" sur vba et c'est pour
cela qu'il y a 2 problemes bien distincts
j'espere etre clair et pour info voici mon code pour la mise en forme
conditionnelle si cela peut vous aider
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("b20:b40")) Is Nothing Then Exit Sub
If [Target] = "noir" Then
Target.Cells(1, 2).Interior.ColorIndex = 4 Exit Sub
End If
etc
end sub
bonne soiree
merci a l'avance pour vos precieuses aide
andree et romuald
Bonjour.
1. parce que ta macro est prévue pour traiter une cellule à la fois. Si
elle se déclenche alors que "target" représente, l'instruction :
If [Target] = "noir" Then
va planter.
Il faut écrire :
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Plage As Range, c As Range
Set Plage = Intersect(Target, Range("b20:b40"))
If Plage Is Nothing Then Exit Sub
For Each c In Plage
If c.Value = "noir" Then
c.Cells(1, 2).Interior.ColorIndex = 4
End If
Next c
End Sub
2. la macro ne se déclenche que pour une saisie manuelle. Dans ce cas,
utilise plutôt la mise en forme conditionnelle.
Cordialement.
Daniel
"Andrée et Romuald" a écrit dans le message de news:bonjour a toutes et a tous
voici mes 2 petits soucis :
j'ai une applicationavec 2 feuilles de calcul,une des formes
conditionnelles et l'autre est une feuille de calcul normal
1 : lorsque je selectionne une cellule, que j'y introduis une valeur
correcte, la cellule change de couleur (parfait)
mais lorsque je veux tirer sur la cellule(pour y mettre la valeur
incrementee) j'obtiens un message d'erreur. pourquoi ou est-ce normal ?
comment remedier a se premier souci ?.
2:sur l'autre feuille de la meme application, je voudrais que, si
j'introduis un valeur dans une cellule quelconque, celle-ci est
retransmise(ok) sur la premiere feuille (voir le premier probleme)et (et
c'est la le souci)que cette cellule change de couleur si la valeur
correspond a la formule conditionnelle.
Je suis toujours occupe a essayer certains"trucs" sur vba et c'est pour
cela qu'il y a 2 problemes bien distincts
j'espere etre clair et pour info voici mon code pour la mise en forme
conditionnelle si cela peut vous aider
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("b20:b40")) Is Nothing Then Exit Sub
If [Target] = "noir" Then
Target.Cells(1, 2).Interior.ColorIndex = 4 Exit Sub
End If
etc
end sub
bonne soiree
merci a l'avance pour vos precieuses aide
andree et romuald
Bonjour.
1. parce que ta macro est prévue pour traiter une cellule à la fois. Si
elle se déclenche alors que "target" représente, l'instruction :
If [Target] = "noir" Then
va planter.
Il faut écrire :
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Plage As Range, c As Range
Set Plage = Intersect(Target, Range("b20:b40"))
If Plage Is Nothing Then Exit Sub
For Each c In Plage
If c.Value = "noir" Then
c.Cells(1, 2).Interior.ColorIndex = 4
End If
Next c
End Sub
2. la macro ne se déclenche que pour une saisie manuelle. Dans ce cas,
utilise plutôt la mise en forme conditionnelle.
Cordialement.
Daniel
"Andrée et Romuald" <fa289649@skynet.be> a écrit dans le message de news:
eybLkanUGHA.5808@TK2MSFTNGP12.phx.gbl...
bonjour a toutes et a tous
voici mes 2 petits soucis :
j'ai une applicationavec 2 feuilles de calcul,une des formes
conditionnelles et l'autre est une feuille de calcul normal
1 : lorsque je selectionne une cellule, que j'y introduis une valeur
correcte, la cellule change de couleur (parfait)
mais lorsque je veux tirer sur la cellule(pour y mettre la valeur
incrementee) j'obtiens un message d'erreur. pourquoi ou est-ce normal ?
comment remedier a se premier souci ?.
2:sur l'autre feuille de la meme application, je voudrais que, si
j'introduis un valeur dans une cellule quelconque, celle-ci est
retransmise(ok) sur la premiere feuille (voir le premier probleme)et (et
c'est la le souci)que cette cellule change de couleur si la valeur
correspond a la formule conditionnelle.
Je suis toujours occupe a essayer certains"trucs" sur vba et c'est pour
cela qu'il y a 2 problemes bien distincts
j'espere etre clair et pour info voici mon code pour la mise en forme
conditionnelle si cela peut vous aider
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("b20:b40")) Is Nothing Then Exit Sub
If [Target] = "noir" Then
Target.Cells(1, 2).Interior.ColorIndex = 4 Exit Sub
End If
etc
end sub
bonne soiree
merci a l'avance pour vos precieuses aide
andree et romuald
Bonjour.
1. parce que ta macro est prévue pour traiter une cellule à la fois. Si
elle se déclenche alors que "target" représente, l'instruction :
If [Target] = "noir" Then
va planter.
Il faut écrire :
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Plage As Range, c As Range
Set Plage = Intersect(Target, Range("b20:b40"))
If Plage Is Nothing Then Exit Sub
For Each c In Plage
If c.Value = "noir" Then
c.Cells(1, 2).Interior.ColorIndex = 4
End If
Next c
End Sub
2. la macro ne se déclenche que pour une saisie manuelle. Dans ce cas,
utilise plutôt la mise en forme conditionnelle.
Cordialement.
Daniel
"Andrée et Romuald" a écrit dans le message de news:bonjour a toutes et a tous
voici mes 2 petits soucis :
j'ai une applicationavec 2 feuilles de calcul,une des formes
conditionnelles et l'autre est une feuille de calcul normal
1 : lorsque je selectionne une cellule, que j'y introduis une valeur
correcte, la cellule change de couleur (parfait)
mais lorsque je veux tirer sur la cellule(pour y mettre la valeur
incrementee) j'obtiens un message d'erreur. pourquoi ou est-ce normal ?
comment remedier a se premier souci ?.
2:sur l'autre feuille de la meme application, je voudrais que, si
j'introduis un valeur dans une cellule quelconque, celle-ci est
retransmise(ok) sur la premiere feuille (voir le premier probleme)et (et
c'est la le souci)que cette cellule change de couleur si la valeur
correspond a la formule conditionnelle.
Je suis toujours occupe a essayer certains"trucs" sur vba et c'est pour
cela qu'il y a 2 problemes bien distincts
j'espere etre clair et pour info voici mon code pour la mise en forme
conditionnelle si cela peut vous aider
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("b20:b40")) Is Nothing Then Exit Sub
If [Target] = "noir" Then
Target.Cells(1, 2).Interior.ColorIndex = 4 Exit Sub
End If
etc
end sub
bonne soiree
merci a l'avance pour vos precieuses aide
andree et romuald
Bonjour.
1. parce que ta macro est prévue pour traiter une cellule à la fois. Si
elle se déclenche alors que "target" représente, l'instruction :
If [Target] = "noir" Then
va planter.
Il faut écrire :
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Plage As Range, c As Range
Set Plage = Intersect(Target, Range("b20:b40"))
If Plage Is Nothing Then Exit Sub
For Each c In Plage
If c.Value = "noir" Then
c.Cells(1, 2).Interior.ColorIndex = 4
End If
Next c
End Sub
2. la macro ne se déclenche que pour une saisie manuelle. Dans ce cas,
utilise plutôt la mise en forme conditionnelle.
Cordialement.
Daniel
"Andrée et Romuald" a écrit dans le message de news:bonjour a toutes et a tous
voici mes 2 petits soucis :
j'ai une applicationavec 2 feuilles de calcul,une des formes
conditionnelles et l'autre est une feuille de calcul normal
1 : lorsque je selectionne une cellule, que j'y introduis une valeur
correcte, la cellule change de couleur (parfait)
mais lorsque je veux tirer sur la cellule(pour y mettre la valeur
incrementee) j'obtiens un message d'erreur. pourquoi ou est-ce normal ?
comment remedier a se premier souci ?.
2:sur l'autre feuille de la meme application, je voudrais que, si
j'introduis un valeur dans une cellule quelconque, celle-ci est
retransmise(ok) sur la premiere feuille (voir le premier probleme)et (et
c'est la le souci)que cette cellule change de couleur si la valeur
correspond a la formule conditionnelle.
Je suis toujours occupe a essayer certains"trucs" sur vba et c'est pour
cela qu'il y a 2 problemes bien distincts
j'espere etre clair et pour info voici mon code pour la mise en forme
conditionnelle si cela peut vous aider
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("b20:b40")) Is Nothing Then Exit Sub
If [Target] = "noir" Then
Target.Cells(1, 2).Interior.ColorIndex = 4 Exit Sub
End If
etc
end sub
bonne soiree
merci a l'avance pour vos precieuses aide
andree et romuald
Bonjour.
1. parce que ta macro est prévue pour traiter une cellule à la fois. Si
elle se déclenche alors que "target" représente, l'instruction :
If [Target] = "noir" Then
va planter.
Il faut écrire :
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Plage As Range, c As Range
Set Plage = Intersect(Target, Range("b20:b40"))
If Plage Is Nothing Then Exit Sub
For Each c In Plage
If c.Value = "noir" Then
c.Cells(1, 2).Interior.ColorIndex = 4
End If
Next c
End Sub
2. la macro ne se déclenche que pour une saisie manuelle. Dans ce cas,
utilise plutôt la mise en forme conditionnelle.
Cordialement.
Daniel
"Andrée et Romuald" <fa289649@skynet.be> a écrit dans le message de news:
eybLkanUGHA.5808@TK2MSFTNGP12.phx.gbl...
bonjour a toutes et a tous
voici mes 2 petits soucis :
j'ai une applicationavec 2 feuilles de calcul,une des formes
conditionnelles et l'autre est une feuille de calcul normal
1 : lorsque je selectionne une cellule, que j'y introduis une valeur
correcte, la cellule change de couleur (parfait)
mais lorsque je veux tirer sur la cellule(pour y mettre la valeur
incrementee) j'obtiens un message d'erreur. pourquoi ou est-ce normal ?
comment remedier a se premier souci ?.
2:sur l'autre feuille de la meme application, je voudrais que, si
j'introduis un valeur dans une cellule quelconque, celle-ci est
retransmise(ok) sur la premiere feuille (voir le premier probleme)et (et
c'est la le souci)que cette cellule change de couleur si la valeur
correspond a la formule conditionnelle.
Je suis toujours occupe a essayer certains"trucs" sur vba et c'est pour
cela qu'il y a 2 problemes bien distincts
j'espere etre clair et pour info voici mon code pour la mise en forme
conditionnelle si cela peut vous aider
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("b20:b40")) Is Nothing Then Exit Sub
If [Target] = "noir" Then
Target.Cells(1, 2).Interior.ColorIndex = 4 Exit Sub
End If
etc
end sub
bonne soiree
merci a l'avance pour vos precieuses aide
andree et romuald
Bonjour.
1. parce que ta macro est prévue pour traiter une cellule à la fois. Si
elle se déclenche alors que "target" représente, l'instruction :
If [Target] = "noir" Then
va planter.
Il faut écrire :
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Plage As Range, c As Range
Set Plage = Intersect(Target, Range("b20:b40"))
If Plage Is Nothing Then Exit Sub
For Each c In Plage
If c.Value = "noir" Then
c.Cells(1, 2).Interior.ColorIndex = 4
End If
Next c
End Sub
2. la macro ne se déclenche que pour une saisie manuelle. Dans ce cas,
utilise plutôt la mise en forme conditionnelle.
Cordialement.
Daniel
"Andrée et Romuald" a écrit dans le message de news:bonjour a toutes et a tous
voici mes 2 petits soucis :
j'ai une applicationavec 2 feuilles de calcul,une des formes
conditionnelles et l'autre est une feuille de calcul normal
1 : lorsque je selectionne une cellule, que j'y introduis une valeur
correcte, la cellule change de couleur (parfait)
mais lorsque je veux tirer sur la cellule(pour y mettre la valeur
incrementee) j'obtiens un message d'erreur. pourquoi ou est-ce normal ?
comment remedier a se premier souci ?.
2:sur l'autre feuille de la meme application, je voudrais que, si
j'introduis un valeur dans une cellule quelconque, celle-ci est
retransmise(ok) sur la premiere feuille (voir le premier probleme)et (et
c'est la le souci)que cette cellule change de couleur si la valeur
correspond a la formule conditionnelle.
Je suis toujours occupe a essayer certains"trucs" sur vba et c'est pour
cela qu'il y a 2 problemes bien distincts
j'espere etre clair et pour info voici mon code pour la mise en forme
conditionnelle si cela peut vous aider
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("b20:b40")) Is Nothing Then Exit Sub
If [Target] = "noir" Then
Target.Cells(1, 2).Interior.ColorIndex = 4 Exit Sub
End If
etc
end sub
bonne soiree
merci a l'avance pour vos precieuses aide
andree et romuald
re bojour
je viens de faire quelques essais avec ce code mais rien ne se passe ???
pourquoi ?
"Daniel" a écrit dans le message de news:Bonjour.
1. parce que ta macro est prévue pour traiter une cellule à la fois. Si
elle se déclenche alors que "target" représente, l'instruction :
If [Target] = "noir" Then
va planter.
Il faut écrire :
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Plage As Range, c As Range
Set Plage = Intersect(Target, Range("b20:b40"))
If Plage Is Nothing Then Exit Sub
For Each c In Plage
If c.Value = "noir" Then
c.Cells(1, 2).Interior.ColorIndex = 4
End If
Next c
End Sub
2. la macro ne se déclenche que pour une saisie manuelle. Dans ce cas,
utilise plutôt la mise en forme conditionnelle.
Cordialement.
Daniel
"Andrée et Romuald" a écrit dans le message de news:bonjour a toutes et a tous
voici mes 2 petits soucis :
j'ai une applicationavec 2 feuilles de calcul,une des formes
conditionnelles et l'autre est une feuille de calcul normal
1 : lorsque je selectionne une cellule, que j'y introduis une valeur
correcte, la cellule change de couleur (parfait)
mais lorsque je veux tirer sur la cellule(pour y mettre la valeur
incrementee) j'obtiens un message d'erreur. pourquoi ou est-ce normal ?
comment remedier a se premier souci ?.
2:sur l'autre feuille de la meme application, je voudrais que, si
j'introduis un valeur dans une cellule quelconque, celle-ci est
retransmise(ok) sur la premiere feuille (voir le premier probleme)et (et
c'est la le souci)que cette cellule change de couleur si la valeur
correspond a la formule conditionnelle.
Je suis toujours occupe a essayer certains"trucs" sur vba et c'est pour
cela qu'il y a 2 problemes bien distincts
j'espere etre clair et pour info voici mon code pour la mise en forme
conditionnelle si cela peut vous aider
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("b20:b40")) Is Nothing Then Exit Sub
If [Target] = "noir" Then
Target.Cells(1, 2).Interior.ColorIndex = 4 Exit Sub
End If
etc
end sub
bonne soiree
merci a l'avance pour vos precieuses aide
andree et romuald
re bojour
je viens de faire quelques essais avec ce code mais rien ne se passe ???
pourquoi ?
"Daniel" <dZZZcolardelle@free.fr> a écrit dans le message de news:
eszVNEoUGHA.4156@TK2MSFTNGP10.phx.gbl...
Bonjour.
1. parce que ta macro est prévue pour traiter une cellule à la fois. Si
elle se déclenche alors que "target" représente, l'instruction :
If [Target] = "noir" Then
va planter.
Il faut écrire :
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Plage As Range, c As Range
Set Plage = Intersect(Target, Range("b20:b40"))
If Plage Is Nothing Then Exit Sub
For Each c In Plage
If c.Value = "noir" Then
c.Cells(1, 2).Interior.ColorIndex = 4
End If
Next c
End Sub
2. la macro ne se déclenche que pour une saisie manuelle. Dans ce cas,
utilise plutôt la mise en forme conditionnelle.
Cordialement.
Daniel
"Andrée et Romuald" <fa289649@skynet.be> a écrit dans le message de news:
eybLkanUGHA.5808@TK2MSFTNGP12.phx.gbl...
bonjour a toutes et a tous
voici mes 2 petits soucis :
j'ai une applicationavec 2 feuilles de calcul,une des formes
conditionnelles et l'autre est une feuille de calcul normal
1 : lorsque je selectionne une cellule, que j'y introduis une valeur
correcte, la cellule change de couleur (parfait)
mais lorsque je veux tirer sur la cellule(pour y mettre la valeur
incrementee) j'obtiens un message d'erreur. pourquoi ou est-ce normal ?
comment remedier a se premier souci ?.
2:sur l'autre feuille de la meme application, je voudrais que, si
j'introduis un valeur dans une cellule quelconque, celle-ci est
retransmise(ok) sur la premiere feuille (voir le premier probleme)et (et
c'est la le souci)que cette cellule change de couleur si la valeur
correspond a la formule conditionnelle.
Je suis toujours occupe a essayer certains"trucs" sur vba et c'est pour
cela qu'il y a 2 problemes bien distincts
j'espere etre clair et pour info voici mon code pour la mise en forme
conditionnelle si cela peut vous aider
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("b20:b40")) Is Nothing Then Exit Sub
If [Target] = "noir" Then
Target.Cells(1, 2).Interior.ColorIndex = 4 Exit Sub
End If
etc
end sub
bonne soiree
merci a l'avance pour vos precieuses aide
andree et romuald
re bojour
je viens de faire quelques essais avec ce code mais rien ne se passe ???
pourquoi ?
"Daniel" a écrit dans le message de news:Bonjour.
1. parce que ta macro est prévue pour traiter une cellule à la fois. Si
elle se déclenche alors que "target" représente, l'instruction :
If [Target] = "noir" Then
va planter.
Il faut écrire :
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Plage As Range, c As Range
Set Plage = Intersect(Target, Range("b20:b40"))
If Plage Is Nothing Then Exit Sub
For Each c In Plage
If c.Value = "noir" Then
c.Cells(1, 2).Interior.ColorIndex = 4
End If
Next c
End Sub
2. la macro ne se déclenche que pour une saisie manuelle. Dans ce cas,
utilise plutôt la mise en forme conditionnelle.
Cordialement.
Daniel
"Andrée et Romuald" a écrit dans le message de news:bonjour a toutes et a tous
voici mes 2 petits soucis :
j'ai une applicationavec 2 feuilles de calcul,une des formes
conditionnelles et l'autre est une feuille de calcul normal
1 : lorsque je selectionne une cellule, que j'y introduis une valeur
correcte, la cellule change de couleur (parfait)
mais lorsque je veux tirer sur la cellule(pour y mettre la valeur
incrementee) j'obtiens un message d'erreur. pourquoi ou est-ce normal ?
comment remedier a se premier souci ?.
2:sur l'autre feuille de la meme application, je voudrais que, si
j'introduis un valeur dans une cellule quelconque, celle-ci est
retransmise(ok) sur la premiere feuille (voir le premier probleme)et (et
c'est la le souci)que cette cellule change de couleur si la valeur
correspond a la formule conditionnelle.
Je suis toujours occupe a essayer certains"trucs" sur vba et c'est pour
cela qu'il y a 2 problemes bien distincts
j'espere etre clair et pour info voici mon code pour la mise en forme
conditionnelle si cela peut vous aider
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("b20:b40")) Is Nothing Then Exit Sub
If [Target] = "noir" Then
Target.Cells(1, 2).Interior.ColorIndex = 4 Exit Sub
End If
etc
end sub
bonne soiree
merci a l'avance pour vos precieuses aide
andree et romuald
Bonjour.
Regarde le classeur à l'adresse :
http://cjoint.com/?dDkpBDKtWl
Cordialement.
Daniel
"Andrée et Romuald" a écrit dans le message de news:re bojour
je viens de faire quelques essais avec ce code mais rien ne se passe ???
pourquoi ?
"Daniel" a écrit dans le message de news:Bonjour.
1. parce que ta macro est prévue pour traiter une cellule à la fois. Si
elle se déclenche alors que "target" représente, l'instruction :
If [Target] = "noir" Then
va planter.
Il faut écrire :
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Plage As Range, c As Range
Set Plage = Intersect(Target, Range("b20:b40"))
If Plage Is Nothing Then Exit Sub
For Each c In Plage
If c.Value = "noir" Then
c.Cells(1, 2).Interior.ColorIndex = 4
End If
Next c
End Sub
2. la macro ne se déclenche que pour une saisie manuelle. Dans ce cas,
utilise plutôt la mise en forme conditionnelle.
Cordialement.
Daniel
"Andrée et Romuald" a écrit dans le message de
news:bonjour a toutes et a tous
voici mes 2 petits soucis :
j'ai une applicationavec 2 feuilles de calcul,une des formes
conditionnelles et l'autre est une feuille de calcul normal
1 : lorsque je selectionne une cellule, que j'y introduis une valeur
correcte, la cellule change de couleur (parfait)
mais lorsque je veux tirer sur la cellule(pour y mettre la valeur
incrementee) j'obtiens un message d'erreur. pourquoi ou est-ce normal ?
comment remedier a se premier souci ?.
2:sur l'autre feuille de la meme application, je voudrais que, si
j'introduis un valeur dans une cellule quelconque, celle-ci est
retransmise(ok) sur la premiere feuille (voir le premier probleme)et
(et c'est la le souci)que cette cellule change de couleur si la valeur
correspond a la formule conditionnelle.
Je suis toujours occupe a essayer certains"trucs" sur vba et c'est pour
cela qu'il y a 2 problemes bien distincts
j'espere etre clair et pour info voici mon code pour la mise en forme
conditionnelle si cela peut vous aider
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("b20:b40")) Is Nothing Then Exit Sub
If [Target] = "noir" Then
Target.Cells(1, 2).Interior.ColorIndex = 4 Exit Sub
End If
etc
end sub
bonne soiree
merci a l'avance pour vos precieuses aide
andree et romuald
Bonjour.
Regarde le classeur à l'adresse :
http://cjoint.com/?dDkpBDKtWl
Cordialement.
Daniel
"Andrée et Romuald" <fa289649@skynet.be> a écrit dans le message de news:
ee1wKqvUGHA.5044@TK2MSFTNGP09.phx.gbl...
re bojour
je viens de faire quelques essais avec ce code mais rien ne se passe ???
pourquoi ?
"Daniel" <dZZZcolardelle@free.fr> a écrit dans le message de news:
eszVNEoUGHA.4156@TK2MSFTNGP10.phx.gbl...
Bonjour.
1. parce que ta macro est prévue pour traiter une cellule à la fois. Si
elle se déclenche alors que "target" représente, l'instruction :
If [Target] = "noir" Then
va planter.
Il faut écrire :
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Plage As Range, c As Range
Set Plage = Intersect(Target, Range("b20:b40"))
If Plage Is Nothing Then Exit Sub
For Each c In Plage
If c.Value = "noir" Then
c.Cells(1, 2).Interior.ColorIndex = 4
End If
Next c
End Sub
2. la macro ne se déclenche que pour une saisie manuelle. Dans ce cas,
utilise plutôt la mise en forme conditionnelle.
Cordialement.
Daniel
"Andrée et Romuald" <fa289649@skynet.be> a écrit dans le message de
news: eybLkanUGHA.5808@TK2MSFTNGP12.phx.gbl...
bonjour a toutes et a tous
voici mes 2 petits soucis :
j'ai une applicationavec 2 feuilles de calcul,une des formes
conditionnelles et l'autre est une feuille de calcul normal
1 : lorsque je selectionne une cellule, que j'y introduis une valeur
correcte, la cellule change de couleur (parfait)
mais lorsque je veux tirer sur la cellule(pour y mettre la valeur
incrementee) j'obtiens un message d'erreur. pourquoi ou est-ce normal ?
comment remedier a se premier souci ?.
2:sur l'autre feuille de la meme application, je voudrais que, si
j'introduis un valeur dans une cellule quelconque, celle-ci est
retransmise(ok) sur la premiere feuille (voir le premier probleme)et
(et c'est la le souci)que cette cellule change de couleur si la valeur
correspond a la formule conditionnelle.
Je suis toujours occupe a essayer certains"trucs" sur vba et c'est pour
cela qu'il y a 2 problemes bien distincts
j'espere etre clair et pour info voici mon code pour la mise en forme
conditionnelle si cela peut vous aider
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("b20:b40")) Is Nothing Then Exit Sub
If [Target] = "noir" Then
Target.Cells(1, 2).Interior.ColorIndex = 4 Exit Sub
End If
etc
end sub
bonne soiree
merci a l'avance pour vos precieuses aide
andree et romuald
Bonjour.
Regarde le classeur à l'adresse :
http://cjoint.com/?dDkpBDKtWl
Cordialement.
Daniel
"Andrée et Romuald" a écrit dans le message de news:re bojour
je viens de faire quelques essais avec ce code mais rien ne se passe ???
pourquoi ?
"Daniel" a écrit dans le message de news:Bonjour.
1. parce que ta macro est prévue pour traiter une cellule à la fois. Si
elle se déclenche alors que "target" représente, l'instruction :
If [Target] = "noir" Then
va planter.
Il faut écrire :
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Plage As Range, c As Range
Set Plage = Intersect(Target, Range("b20:b40"))
If Plage Is Nothing Then Exit Sub
For Each c In Plage
If c.Value = "noir" Then
c.Cells(1, 2).Interior.ColorIndex = 4
End If
Next c
End Sub
2. la macro ne se déclenche que pour une saisie manuelle. Dans ce cas,
utilise plutôt la mise en forme conditionnelle.
Cordialement.
Daniel
"Andrée et Romuald" a écrit dans le message de
news:bonjour a toutes et a tous
voici mes 2 petits soucis :
j'ai une applicationavec 2 feuilles de calcul,une des formes
conditionnelles et l'autre est une feuille de calcul normal
1 : lorsque je selectionne une cellule, que j'y introduis une valeur
correcte, la cellule change de couleur (parfait)
mais lorsque je veux tirer sur la cellule(pour y mettre la valeur
incrementee) j'obtiens un message d'erreur. pourquoi ou est-ce normal ?
comment remedier a se premier souci ?.
2:sur l'autre feuille de la meme application, je voudrais que, si
j'introduis un valeur dans une cellule quelconque, celle-ci est
retransmise(ok) sur la premiere feuille (voir le premier probleme)et
(et c'est la le souci)que cette cellule change de couleur si la valeur
correspond a la formule conditionnelle.
Je suis toujours occupe a essayer certains"trucs" sur vba et c'est pour
cela qu'il y a 2 problemes bien distincts
j'espere etre clair et pour info voici mon code pour la mise en forme
conditionnelle si cela peut vous aider
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("b20:b40")) Is Nothing Then Exit Sub
If [Target] = "noir" Then
Target.Cells(1, 2).Interior.ColorIndex = 4 Exit Sub
End If
etc
end sub
bonne soiree
merci a l'avance pour vos precieuses aide
andree et romuald