Salut Pascal !
j'ai bien reçu ton classeur mais je voudrais juste savoir sur quelle
feuille
il faut faire la mise en forme contionnelle ...
J'ai regardé mais il me semble qu'il n'y a pas de feuille où la plage
D6:D36
pourrait en être la référence ...
J'attends avec impatience de tes nouvelles ;-))
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
Sites de références,
Word :
http://faq.ms.word.free.fr/
Barre de menu disparues ? voir ici -
http://faq.ms.word.free.fr/Environnement/Environnement_reponses.htm#e1
Excel :
http://www.excelabo.net/
http://jacxl.free.fr/cours_xl/cours_xl_jac.html#accueil_xl
http://dj.joss.free.fr/faq.htm
http://perso.wanadoo.fr/frederic.sigonneau/
http://excel.1.free.fr/
"Pascal" a écrit dans le message de
news:Ok je te l'envoie Zippé, mais à quelle adresse ?
"Dédé" a écrit dans le message de news:
OCg$Bom est-ce que tu a reçu mon exemple dans ta BAL !!
C'est la base et normalement tu devrait y arriver aevc cela !!!
Maintenant, il faut faire attention à la casse, peut-être que c'est
une
erreur qui vient de là ...
Autrement, si c'est pas trop confidentiel, tu peux m'envoyer ton
classeurenBAL perso mais n'oublie pas de me mettre un mot car j'ai pas mal de
mondequi m'envoie plein de truc des NG et je sais plus vraiment à quoi cela
corresponds ;-))
Merci de ta prochaine réponse !
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" a écrit dans le message de
news:Bon j'ai copié ton code, mais bon je dois être réellement nul car ca
marchepas en appliquant mes références.
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal DD As
Range)If Not Intersect(DD, [D6:D36]) Is Nothing Then
Select Case [D6:D36]
Case Is = "PRESBUR"
ActiveCell.Interior.ColorIndex = 40
Case Is = "FORM"
ActiveCell.Interior.ColorIndex = 7
Case Is = "VAC"
ActiveCell.Interior.ColorIndex = 8
Case Is = "RVEXT"
ActiveCell.Interior.ColorIndex = 9
Case Is = "CONG"
End Select
End If
End Sub
DD correspond à quoi?
D6:D36 est la plage de données où je dois appliquer les couleurs et
c'estcelle qui recoit la liste de validation. Qui se trouve sur une
feuille
DATAavec nom défini= Etat
Si j'y arrive j'en aurais appris plus en 3 heures qu'en 6 mois
Pascal
"Dédé" a écrit dans le message de news:Heuuu pour être plus précis cela aurait dû apparaître comme ça :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Target, Range("A1:C3")) Is Nothing Then
MsgBox "Salut ! ce message apparaît car tu a sélectionné" &
Chr(13)
&"unecellule de la plage A1 à C3", vbInformation, "Info..."
End If
End Sub
Traduction :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Permet de faire démarrer une macro lors de la sélection d'une
celluleoud'une plage de cellule ..
If Not Intersect(Target, Range("A1:C3")) Is Nothing Then
Si l'interscetion de ta sélection avec la plage de cellule A1:C3
est
"Vrai"cela fait démarrer la macro qui te met le msgbox ...
En fait, il y a deux négation ("if not" et "Nothing") qui
s'annulent
mutuellement ...
On pourrait aussi faire cela comme suit :
If Intersect(Target, Range("A1:C3")) Is Nothing Then Exit Sub
MsgBox "Salut ! ce message apparaît car tu a sélectionné" &
Chr(13)
&"unecellule de la plage A1 à C3", vbInformation, "Info..."
end sub
Mais on m'a souvent dit que la sortie d'une macro en début de
macro
n'étaitpas très "pro ..." alors je pense que la santé de ton excel (et de
tesnerfs;-)) devrait mieux aller avec le premier exemple ;-))
Pour ce qui concerne les "Range("A1:C3")" c'est-à-dire la
sélection
d'uneplage de cellule, tu peux abbréger ton code par [A1:C3] ... pour
ce
quietdu résultat, il est le même sauf que tu économise ton clavier et
que
çafaittoujours bien ... ;-))
Essaie de faire quelques tests et tu comprendra ;-))
Est-ce que tu t'en sors ?
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Dédé" a écrit dans le message de
news:Aie aie aie ;-)) Alors c'est même as les 5 % ;-))
L'exemple que je t'ai donné te permet de faire démarrer une
macro
quesitusélectionne une cellule présente dans une plage donnée ...
Maintenant, tu me dis que tu a déjà fais plusieurs macros donc,
je
vaispaste dire comment ça marche ;-))
Au fait, sur quoi tu bloque ??
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" a écrit dans le message de
news:Ok Merci mais dans ton code à quoi correspond [A1:C3]?
Et après THEN comment je fais éxécuter mes Macros?
Je suis encore plus nul que Julie Apparement
"Dédé" a écrit dans le message de
news:Salut Pascal !
Essaie ceci :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(DD, [A1:C3]) Is Nothing Then
'ta macro
End If
End Sub
Par contre, pour les message des inconnus qui débitent
n'importequoi,pasbesoin de se rabaisser à leur niveau et de leurs répondre
;-))
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" a écrit dans le message de
news:%Bonjour à tous qui pourrait m'aider?
J'ai un tableau Excel ("A1:R37") avec plusieurs macro qui
nedoivents'éxcuter que sur ("D6:D37").
Comment faire pour qu'elles ne s'éxcécutent pas sur les
autresplages,maisque mes autres macros continuent de s'éxécuter sur
l'intégralitédutableau???
Merci de me répondre
Pascal
Salut Pascal !
j'ai bien reçu ton classeur mais je voudrais juste savoir sur quelle
feuille
il faut faire la mise en forme contionnelle ...
J'ai regardé mais il me semble qu'il n'y a pas de feuille où la plage
D6:D36
pourrait en être la référence ...
J'attends avec impatience de tes nouvelles ;-))
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
Sites de références,
Word :
http://faq.ms.word.free.fr/
Barre de menu disparues ? voir ici -
http://faq.ms.word.free.fr/Environnement/Environnement_reponses.htm#e1
Excel :
http://www.excelabo.net/
http://jacxl.free.fr/cours_xl/cours_xl_jac.html#accueil_xl
http://dj.joss.free.fr/faq.htm
http://perso.wanadoo.fr/frederic.sigonneau/
http://excel.1.free.fr/
"Pascal" <pabd@wanadoo.fr> a écrit dans le message de
news:Ov2mNPVnDHA.1708@TK2MSFTNGP12.phx.gbl...
Ok je te l'envoie Zippé, mais à quelle adresse ?
"Dédé" <NsOuSgPuAsM12002@yahoo.fr> a écrit dans le message de news:
OCg$XIVnDHA.2512@TK2MSFTNGP09.phx.gbl...
Bom est-ce que tu a reçu mon exemple dans ta BAL !!
C'est la base et normalement tu devrait y arriver aevc cela !!!
Maintenant, il faut faire attention à la casse, peut-être que c'est
une
erreur qui vient de là ...
Autrement, si c'est pas trop confidentiel, tu peux m'envoyer ton
classeur
en
BAL perso mais n'oublie pas de me mettre un mot car j'ai pas mal de
monde
qui m'envoie plein de truc des NG et je sais plus vraiment à quoi cela
corresponds ;-))
Merci de ta prochaine réponse !
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" <pabd@wanadoo.fr> a écrit dans le message de
news:OadblKUnDHA.2528@TK2MSFTNGP12.phx.gbl...
Bon j'ai copié ton code, mais bon je dois être réellement nul car ca
marche
pas en appliquant mes références.
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal DD As
Range)
If Not Intersect(DD, [D6:D36]) Is Nothing Then
Select Case [D6:D36]
Case Is = "PRESBUR"
ActiveCell.Interior.ColorIndex = 40
Case Is = "FORM"
ActiveCell.Interior.ColorIndex = 7
Case Is = "VAC"
ActiveCell.Interior.ColorIndex = 8
Case Is = "RVEXT"
ActiveCell.Interior.ColorIndex = 9
Case Is = "CONG"
End Select
End If
End Sub
DD correspond à quoi?
D6:D36 est la plage de données où je dois appliquer les couleurs et
c'est
celle qui recoit la liste de validation. Qui se trouve sur une
feuille
DATA
avec nom défini= Etat
Si j'y arrive j'en aurais appris plus en 3 heures qu'en 6 mois
Pascal
"Dédé" <NsOuSgPuAsM12002@yahoo.fr> a écrit dans le message de news:
eQalj7SnDHA.1764@tk2msftngp13.phx.gbl...
Heuuu pour être plus précis cela aurait dû apparaître comme ça :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Target, Range("A1:C3")) Is Nothing Then
MsgBox "Salut ! ce message apparaît car tu a sélectionné" &
Chr(13)
&
"une
cellule de la plage A1 à C3", vbInformation, "Info..."
End If
End Sub
Traduction :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Permet de faire démarrer une macro lors de la sélection d'une
cellule
ou
d'une plage de cellule ..
If Not Intersect(Target, Range("A1:C3")) Is Nothing Then
Si l'interscetion de ta sélection avec la plage de cellule A1:C3
est
"Vrai"
cela fait démarrer la macro qui te met le msgbox ...
En fait, il y a deux négation ("if not" et "Nothing") qui
s'annulent
mutuellement ...
On pourrait aussi faire cela comme suit :
If Intersect(Target, Range("A1:C3")) Is Nothing Then Exit Sub
MsgBox "Salut ! ce message apparaît car tu a sélectionné" &
Chr(13)
&
"une
cellule de la plage A1 à C3", vbInformation, "Info..."
end sub
Mais on m'a souvent dit que la sortie d'une macro en début de
macro
n'était
pas très "pro ..." alors je pense que la santé de ton excel (et de
tes
nerfs
;-)) devrait mieux aller avec le premier exemple ;-))
Pour ce qui concerne les "Range("A1:C3")" c'est-à-dire la
sélection
d'une
plage de cellule, tu peux abbréger ton code par [A1:C3] ... pour
ce
qui
et
du résultat, il est le même sauf que tu économise ton clavier et
que
ça
fait
toujours bien ... ;-))
Essaie de faire quelques tests et tu comprendra ;-))
Est-ce que tu t'en sors ?
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Dédé" <NsOuSgPuAsM12002@yahoo.fr> a écrit dans le message de
news:O4pMYqSnDHA.1708@TK2MSFTNGP12.phx.gbl...
Aie aie aie ;-)) Alors c'est même as les 5 % ;-))
L'exemple que je t'ai donné te permet de faire démarrer une
macro
que
si
tu
sélectionne une cellule présente dans une plage donnée ...
Maintenant, tu me dis que tu a déjà fais plusieurs macros donc,
je
vais
pas
te dire comment ça marche ;-))
Au fait, sur quoi tu bloque ??
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" <pabd@wanadoo.fr> a écrit dans le message de
news:u20zHIKnDHA.2000@TK2MSFTNGP12.phx.gbl...
Ok Merci mais dans ton code à quoi correspond [A1:C3]?
Et après THEN comment je fais éxécuter mes Macros?
Je suis encore plus nul que Julie Apparement
"Dédé" <NsOuSgPuAsM12002@yahoo.fr> a écrit dans le message de
news:
uir1C9JnDHA.2444@TK2MSFTNGP09.phx.gbl...
Salut Pascal !
Essaie ceci :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(DD, [A1:C3]) Is Nothing Then
'ta macro
End If
End Sub
Par contre, pour les message des inconnus qui débitent
n'importe
quoi,
pas
besoin de se rabaisser à leur niveau et de leurs répondre
;-))
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" <pabd@wanadoo.fr> a écrit dans le message de
news:%23PZbhKJnDHA.2592@TK2MSFTNGP10.phx.gbl...
Bonjour à tous qui pourrait m'aider?
J'ai un tableau Excel ("A1:R37") avec plusieurs macro qui
ne
doivent
s'éxcuter que sur ("D6:D37").
Comment faire pour qu'elles ne s'éxcécutent pas sur les
autres
plages,
mais
que mes autres macros continuent de s'éxécuter sur
l'intégralité
du
tableau???
Merci de me répondre
Pascal
Salut Pascal !
j'ai bien reçu ton classeur mais je voudrais juste savoir sur quelle
feuille
il faut faire la mise en forme contionnelle ...
J'ai regardé mais il me semble qu'il n'y a pas de feuille où la plage
D6:D36
pourrait en être la référence ...
J'attends avec impatience de tes nouvelles ;-))
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
Sites de références,
Word :
http://faq.ms.word.free.fr/
Barre de menu disparues ? voir ici -
http://faq.ms.word.free.fr/Environnement/Environnement_reponses.htm#e1
Excel :
http://www.excelabo.net/
http://jacxl.free.fr/cours_xl/cours_xl_jac.html#accueil_xl
http://dj.joss.free.fr/faq.htm
http://perso.wanadoo.fr/frederic.sigonneau/
http://excel.1.free.fr/
"Pascal" a écrit dans le message de
news:Ok je te l'envoie Zippé, mais à quelle adresse ?
"Dédé" a écrit dans le message de news:
OCg$Bom est-ce que tu a reçu mon exemple dans ta BAL !!
C'est la base et normalement tu devrait y arriver aevc cela !!!
Maintenant, il faut faire attention à la casse, peut-être que c'est
une
erreur qui vient de là ...
Autrement, si c'est pas trop confidentiel, tu peux m'envoyer ton
classeurenBAL perso mais n'oublie pas de me mettre un mot car j'ai pas mal de
mondequi m'envoie plein de truc des NG et je sais plus vraiment à quoi cela
corresponds ;-))
Merci de ta prochaine réponse !
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" a écrit dans le message de
news:Bon j'ai copié ton code, mais bon je dois être réellement nul car ca
marchepas en appliquant mes références.
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal DD As
Range)If Not Intersect(DD, [D6:D36]) Is Nothing Then
Select Case [D6:D36]
Case Is = "PRESBUR"
ActiveCell.Interior.ColorIndex = 40
Case Is = "FORM"
ActiveCell.Interior.ColorIndex = 7
Case Is = "VAC"
ActiveCell.Interior.ColorIndex = 8
Case Is = "RVEXT"
ActiveCell.Interior.ColorIndex = 9
Case Is = "CONG"
End Select
End If
End Sub
DD correspond à quoi?
D6:D36 est la plage de données où je dois appliquer les couleurs et
c'estcelle qui recoit la liste de validation. Qui se trouve sur une
feuille
DATAavec nom défini= Etat
Si j'y arrive j'en aurais appris plus en 3 heures qu'en 6 mois
Pascal
"Dédé" a écrit dans le message de news:Heuuu pour être plus précis cela aurait dû apparaître comme ça :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Target, Range("A1:C3")) Is Nothing Then
MsgBox "Salut ! ce message apparaît car tu a sélectionné" &
Chr(13)
&"unecellule de la plage A1 à C3", vbInformation, "Info..."
End If
End Sub
Traduction :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Permet de faire démarrer une macro lors de la sélection d'une
celluleoud'une plage de cellule ..
If Not Intersect(Target, Range("A1:C3")) Is Nothing Then
Si l'interscetion de ta sélection avec la plage de cellule A1:C3
est
"Vrai"cela fait démarrer la macro qui te met le msgbox ...
En fait, il y a deux négation ("if not" et "Nothing") qui
s'annulent
mutuellement ...
On pourrait aussi faire cela comme suit :
If Intersect(Target, Range("A1:C3")) Is Nothing Then Exit Sub
MsgBox "Salut ! ce message apparaît car tu a sélectionné" &
Chr(13)
&"unecellule de la plage A1 à C3", vbInformation, "Info..."
end sub
Mais on m'a souvent dit que la sortie d'une macro en début de
macro
n'étaitpas très "pro ..." alors je pense que la santé de ton excel (et de
tesnerfs;-)) devrait mieux aller avec le premier exemple ;-))
Pour ce qui concerne les "Range("A1:C3")" c'est-à-dire la
sélection
d'uneplage de cellule, tu peux abbréger ton code par [A1:C3] ... pour
ce
quietdu résultat, il est le même sauf que tu économise ton clavier et
que
çafaittoujours bien ... ;-))
Essaie de faire quelques tests et tu comprendra ;-))
Est-ce que tu t'en sors ?
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Dédé" a écrit dans le message de
news:Aie aie aie ;-)) Alors c'est même as les 5 % ;-))
L'exemple que je t'ai donné te permet de faire démarrer une
macro
quesitusélectionne une cellule présente dans une plage donnée ...
Maintenant, tu me dis que tu a déjà fais plusieurs macros donc,
je
vaispaste dire comment ça marche ;-))
Au fait, sur quoi tu bloque ??
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" a écrit dans le message de
news:Ok Merci mais dans ton code à quoi correspond [A1:C3]?
Et après THEN comment je fais éxécuter mes Macros?
Je suis encore plus nul que Julie Apparement
"Dédé" a écrit dans le message de
news:Salut Pascal !
Essaie ceci :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(DD, [A1:C3]) Is Nothing Then
'ta macro
End If
End Sub
Par contre, pour les message des inconnus qui débitent
n'importequoi,pasbesoin de se rabaisser à leur niveau et de leurs répondre
;-))
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" a écrit dans le message de
news:%Bonjour à tous qui pourrait m'aider?
J'ai un tableau Excel ("A1:R37") avec plusieurs macro qui
nedoivents'éxcuter que sur ("D6:D37").
Comment faire pour qu'elles ne s'éxcécutent pas sur les
autresplages,maisque mes autres macros continuent de s'éxécuter sur
l'intégralitédutableau???
Merci de me répondre
Pascal
Si quelqu'un à une solution, je suis aussi prenneur ;-))
Si quelqu'un à une solution, je suis aussi prenneur ;-))
Si quelqu'un à une solution, je suis aussi prenneur ;-))
Salut !
Ben je bloque pour un truc qui doit être tout bête ...
Voici le code en question ...
Private Sub Worksheet_SelectionChange(ByVal DD As Range)
If Not Intersect(DD, [D6:D36]) Is Nothing Then
Select Case DD
Case Is = ""
ActiveCell.Interior.ColorIndex = 0
ActiveCell.Font.ColorIndex = 0
Case Is = "Presbur"
ActiveCell.Interior.ColorIndex = 8
Case Is = "RVEXT"
ActiveCell.Interior.ColorIndex = 7
Case Is = "CONG"
ActiveCell.Interior.ColorIndex = 6
Case Is = "VAC"
ActiveCell.Interior.ColorIndex = 39
Case Is = "FORM"
ActiveCell.Interior.ColorIndex = 35
End Select
End If
End Sub
Le problème c'est que après validation, vu que ça va dans la cellule en
dessous, ben c'est sur cette cellule que la macro s'effectue et non pas sur
la cellule d'origine ...
Donc, pour que cela fonctione, il faut revenir en arrière et pi là ça marche
...
Si quelqu'un à une solution, je suis aussi prenneur ;-))
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
Sites de références,
Word :
http://faq.ms.word.free.fr/
Barre de menu disparues ? voir ici -
http://faq.ms.word.free.fr/Environnement/Environnement_reponses.htm#e1
Excel :
http://www.excelabo.net/
http://jacxl.free.fr/cours_xl/cours_xl_jac.html#accueil_xl
http://dj.joss.free.fr/faq.htm
http://perso.wanadoo.fr/frederic.sigonneau/
http://excel.1.free.fr/
"Pascal" a écrit dans le message de
news:Ok je te l'envoie Zippé, mais à quelle adresse ?
"Dédé" a écrit dans le message de news:
OCg$Bom est-ce que tu a reçu mon exemple dans ta BAL !!
C'est la base et normalement tu devrait y arriver aevc cela !!!
Maintenant, il faut faire attention à la casse, peut-être que c'est une
erreur qui vient de là ...
Autrement, si c'est pas trop confidentiel, tu peux m'envoyer ton
classeurenBAL perso mais n'oublie pas de me mettre un mot car j'ai pas mal de
mondequi m'envoie plein de truc des NG et je sais plus vraiment à quoi cela
corresponds ;-))
Merci de ta prochaine réponse !
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" a écrit dans le message de
news:Bon j'ai copié ton code, mais bon je dois être réellement nul car ca
marchepas en appliquant mes références.
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal DD As
Range)If Not Intersect(DD, [D6:D36]) Is Nothing Then
Select Case [D6:D36]
Case Is = "PRESBUR"
ActiveCell.Interior.ColorIndex = 40
Case Is = "FORM"
ActiveCell.Interior.ColorIndex = 7
Case Is = "VAC"
ActiveCell.Interior.ColorIndex = 8
Case Is = "RVEXT"
ActiveCell.Interior.ColorIndex = 9
Case Is = "CONG"
End Select
End If
End Sub
DD correspond à quoi?
D6:D36 est la plage de données où je dois appliquer les couleurs et
c'estcelle qui recoit la liste de validation. Qui se trouve sur une feuille
DATAavec nom défini= Etat
Si j'y arrive j'en aurais appris plus en 3 heures qu'en 6 mois
Pascal
"Dédé" a écrit dans le message de news:Heuuu pour être plus précis cela aurait dû apparaître comme ça :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Target, Range("A1:C3")) Is Nothing Then
MsgBox "Salut ! ce message apparaît car tu a sélectionné" & Chr(13)
&"unecellule de la plage A1 à C3", vbInformation, "Info..."
End If
End Sub
Traduction :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Permet de faire démarrer une macro lors de la sélection d'une
celluleoud'une plage de cellule ..
If Not Intersect(Target, Range("A1:C3")) Is Nothing Then
Si l'interscetion de ta sélection avec la plage de cellule A1:C3 est
"Vrai"cela fait démarrer la macro qui te met le msgbox ...
En fait, il y a deux négation ("if not" et "Nothing") qui s'annulent
mutuellement ...
On pourrait aussi faire cela comme suit :
If Intersect(Target, Range("A1:C3")) Is Nothing Then Exit Sub
MsgBox "Salut ! ce message apparaît car tu a sélectionné" & Chr(13)
&"unecellule de la plage A1 à C3", vbInformation, "Info..."
end sub
Mais on m'a souvent dit que la sortie d'une macro en début de macro
n'étaitpas très "pro ..." alors je pense que la santé de ton excel (et de
tesnerfs;-)) devrait mieux aller avec le premier exemple ;-))
Pour ce qui concerne les "Range("A1:C3")" c'est-à-dire la sélection
d'uneplage de cellule, tu peux abbréger ton code par [A1:C3] ... pour ce
quietdu résultat, il est le même sauf que tu économise ton clavier et que
çafaittoujours bien ... ;-))
Essaie de faire quelques tests et tu comprendra ;-))
Est-ce que tu t'en sors ?
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Dédé" a écrit dans le message de
news:Aie aie aie ;-)) Alors c'est même as les 5 % ;-))
L'exemple que je t'ai donné te permet de faire démarrer une macro
quesitusélectionne une cellule présente dans une plage donnée ...
Maintenant, tu me dis que tu a déjà fais plusieurs macros donc, je
vaispaste dire comment ça marche ;-))
Au fait, sur quoi tu bloque ??
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" a écrit dans le message de
news:Ok Merci mais dans ton code à quoi correspond [A1:C3]?
Et après THEN comment je fais éxécuter mes Macros?
Je suis encore plus nul que Julie Apparement
"Dédé" a écrit dans le message de
news:Salut Pascal !
Essaie ceci :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(DD, [A1:C3]) Is Nothing Then
'ta macro
End If
End Sub
Par contre, pour les message des inconnus qui débitent
n'importequoi,pasbesoin de se rabaisser à leur niveau et de leurs répondre ;-))
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" a écrit dans le message de
news:%Bonjour à tous qui pourrait m'aider?
J'ai un tableau Excel ("A1:R37") avec plusieurs macro qui
nedoivents'éxcuter que sur ("D6:D37").
Comment faire pour qu'elles ne s'éxcécutent pas sur les
autresplages,maisque mes autres macros continuent de s'éxécuter sur
l'intégralitédutableau???
Merci de me répondre
Pascal
Salut !
Ben je bloque pour un truc qui doit être tout bête ...
Voici le code en question ...
Private Sub Worksheet_SelectionChange(ByVal DD As Range)
If Not Intersect(DD, [D6:D36]) Is Nothing Then
Select Case DD
Case Is = ""
ActiveCell.Interior.ColorIndex = 0
ActiveCell.Font.ColorIndex = 0
Case Is = "Presbur"
ActiveCell.Interior.ColorIndex = 8
Case Is = "RVEXT"
ActiveCell.Interior.ColorIndex = 7
Case Is = "CONG"
ActiveCell.Interior.ColorIndex = 6
Case Is = "VAC"
ActiveCell.Interior.ColorIndex = 39
Case Is = "FORM"
ActiveCell.Interior.ColorIndex = 35
End Select
End If
End Sub
Le problème c'est que après validation, vu que ça va dans la cellule en
dessous, ben c'est sur cette cellule que la macro s'effectue et non pas sur
la cellule d'origine ...
Donc, pour que cela fonctione, il faut revenir en arrière et pi là ça marche
...
Si quelqu'un à une solution, je suis aussi prenneur ;-))
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
Sites de références,
Word :
http://faq.ms.word.free.fr/
Barre de menu disparues ? voir ici -
http://faq.ms.word.free.fr/Environnement/Environnement_reponses.htm#e1
Excel :
http://www.excelabo.net/
http://jacxl.free.fr/cours_xl/cours_xl_jac.html#accueil_xl
http://dj.joss.free.fr/faq.htm
http://perso.wanadoo.fr/frederic.sigonneau/
http://excel.1.free.fr/
"Pascal" <pabd@wanadoo.fr> a écrit dans le message de
news:Ov2mNPVnDHA.1708@TK2MSFTNGP12.phx.gbl...
Ok je te l'envoie Zippé, mais à quelle adresse ?
"Dédé" <NsOuSgPuAsM12002@yahoo.fr> a écrit dans le message de news:
OCg$XIVnDHA.2512@TK2MSFTNGP09.phx.gbl...
Bom est-ce que tu a reçu mon exemple dans ta BAL !!
C'est la base et normalement tu devrait y arriver aevc cela !!!
Maintenant, il faut faire attention à la casse, peut-être que c'est une
erreur qui vient de là ...
Autrement, si c'est pas trop confidentiel, tu peux m'envoyer ton
classeur
en
BAL perso mais n'oublie pas de me mettre un mot car j'ai pas mal de
monde
qui m'envoie plein de truc des NG et je sais plus vraiment à quoi cela
corresponds ;-))
Merci de ta prochaine réponse !
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" <pabd@wanadoo.fr> a écrit dans le message de
news:OadblKUnDHA.2528@TK2MSFTNGP12.phx.gbl...
Bon j'ai copié ton code, mais bon je dois être réellement nul car ca
marche
pas en appliquant mes références.
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal DD As
Range)
If Not Intersect(DD, [D6:D36]) Is Nothing Then
Select Case [D6:D36]
Case Is = "PRESBUR"
ActiveCell.Interior.ColorIndex = 40
Case Is = "FORM"
ActiveCell.Interior.ColorIndex = 7
Case Is = "VAC"
ActiveCell.Interior.ColorIndex = 8
Case Is = "RVEXT"
ActiveCell.Interior.ColorIndex = 9
Case Is = "CONG"
End Select
End If
End Sub
DD correspond à quoi?
D6:D36 est la plage de données où je dois appliquer les couleurs et
c'est
celle qui recoit la liste de validation. Qui se trouve sur une feuille
DATA
avec nom défini= Etat
Si j'y arrive j'en aurais appris plus en 3 heures qu'en 6 mois
Pascal
"Dédé" <NsOuSgPuAsM12002@yahoo.fr> a écrit dans le message de news:
eQalj7SnDHA.1764@tk2msftngp13.phx.gbl...
Heuuu pour être plus précis cela aurait dû apparaître comme ça :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Target, Range("A1:C3")) Is Nothing Then
MsgBox "Salut ! ce message apparaît car tu a sélectionné" & Chr(13)
&
"une
cellule de la plage A1 à C3", vbInformation, "Info..."
End If
End Sub
Traduction :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Permet de faire démarrer une macro lors de la sélection d'une
cellule
ou
d'une plage de cellule ..
If Not Intersect(Target, Range("A1:C3")) Is Nothing Then
Si l'interscetion de ta sélection avec la plage de cellule A1:C3 est
"Vrai"
cela fait démarrer la macro qui te met le msgbox ...
En fait, il y a deux négation ("if not" et "Nothing") qui s'annulent
mutuellement ...
On pourrait aussi faire cela comme suit :
If Intersect(Target, Range("A1:C3")) Is Nothing Then Exit Sub
MsgBox "Salut ! ce message apparaît car tu a sélectionné" & Chr(13)
&
"une
cellule de la plage A1 à C3", vbInformation, "Info..."
end sub
Mais on m'a souvent dit que la sortie d'une macro en début de macro
n'était
pas très "pro ..." alors je pense que la santé de ton excel (et de
tes
nerfs
;-)) devrait mieux aller avec le premier exemple ;-))
Pour ce qui concerne les "Range("A1:C3")" c'est-à-dire la sélection
d'une
plage de cellule, tu peux abbréger ton code par [A1:C3] ... pour ce
qui
et
du résultat, il est le même sauf que tu économise ton clavier et que
ça
fait
toujours bien ... ;-))
Essaie de faire quelques tests et tu comprendra ;-))
Est-ce que tu t'en sors ?
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Dédé" <NsOuSgPuAsM12002@yahoo.fr> a écrit dans le message de
news:O4pMYqSnDHA.1708@TK2MSFTNGP12.phx.gbl...
Aie aie aie ;-)) Alors c'est même as les 5 % ;-))
L'exemple que je t'ai donné te permet de faire démarrer une macro
que
si
tu
sélectionne une cellule présente dans une plage donnée ...
Maintenant, tu me dis que tu a déjà fais plusieurs macros donc, je
vais
pas
te dire comment ça marche ;-))
Au fait, sur quoi tu bloque ??
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" <pabd@wanadoo.fr> a écrit dans le message de
news:u20zHIKnDHA.2000@TK2MSFTNGP12.phx.gbl...
Ok Merci mais dans ton code à quoi correspond [A1:C3]?
Et après THEN comment je fais éxécuter mes Macros?
Je suis encore plus nul que Julie Apparement
"Dédé" <NsOuSgPuAsM12002@yahoo.fr> a écrit dans le message de
news:
uir1C9JnDHA.2444@TK2MSFTNGP09.phx.gbl...
Salut Pascal !
Essaie ceci :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(DD, [A1:C3]) Is Nothing Then
'ta macro
End If
End Sub
Par contre, pour les message des inconnus qui débitent
n'importe
quoi,
pas
besoin de se rabaisser à leur niveau et de leurs répondre ;-))
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" <pabd@wanadoo.fr> a écrit dans le message de
news:%23PZbhKJnDHA.2592@TK2MSFTNGP10.phx.gbl...
Bonjour à tous qui pourrait m'aider?
J'ai un tableau Excel ("A1:R37") avec plusieurs macro qui
ne
doivent
s'éxcuter que sur ("D6:D37").
Comment faire pour qu'elles ne s'éxcécutent pas sur les
autres
plages,
mais
que mes autres macros continuent de s'éxécuter sur
l'intégralité
du
tableau???
Merci de me répondre
Pascal
Salut !
Ben je bloque pour un truc qui doit être tout bête ...
Voici le code en question ...
Private Sub Worksheet_SelectionChange(ByVal DD As Range)
If Not Intersect(DD, [D6:D36]) Is Nothing Then
Select Case DD
Case Is = ""
ActiveCell.Interior.ColorIndex = 0
ActiveCell.Font.ColorIndex = 0
Case Is = "Presbur"
ActiveCell.Interior.ColorIndex = 8
Case Is = "RVEXT"
ActiveCell.Interior.ColorIndex = 7
Case Is = "CONG"
ActiveCell.Interior.ColorIndex = 6
Case Is = "VAC"
ActiveCell.Interior.ColorIndex = 39
Case Is = "FORM"
ActiveCell.Interior.ColorIndex = 35
End Select
End If
End Sub
Le problème c'est que après validation, vu que ça va dans la cellule en
dessous, ben c'est sur cette cellule que la macro s'effectue et non pas sur
la cellule d'origine ...
Donc, pour que cela fonctione, il faut revenir en arrière et pi là ça marche
...
Si quelqu'un à une solution, je suis aussi prenneur ;-))
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
Sites de références,
Word :
http://faq.ms.word.free.fr/
Barre de menu disparues ? voir ici -
http://faq.ms.word.free.fr/Environnement/Environnement_reponses.htm#e1
Excel :
http://www.excelabo.net/
http://jacxl.free.fr/cours_xl/cours_xl_jac.html#accueil_xl
http://dj.joss.free.fr/faq.htm
http://perso.wanadoo.fr/frederic.sigonneau/
http://excel.1.free.fr/
"Pascal" a écrit dans le message de
news:Ok je te l'envoie Zippé, mais à quelle adresse ?
"Dédé" a écrit dans le message de news:
OCg$Bom est-ce que tu a reçu mon exemple dans ta BAL !!
C'est la base et normalement tu devrait y arriver aevc cela !!!
Maintenant, il faut faire attention à la casse, peut-être que c'est une
erreur qui vient de là ...
Autrement, si c'est pas trop confidentiel, tu peux m'envoyer ton
classeurenBAL perso mais n'oublie pas de me mettre un mot car j'ai pas mal de
mondequi m'envoie plein de truc des NG et je sais plus vraiment à quoi cela
corresponds ;-))
Merci de ta prochaine réponse !
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" a écrit dans le message de
news:Bon j'ai copié ton code, mais bon je dois être réellement nul car ca
marchepas en appliquant mes références.
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal DD As
Range)If Not Intersect(DD, [D6:D36]) Is Nothing Then
Select Case [D6:D36]
Case Is = "PRESBUR"
ActiveCell.Interior.ColorIndex = 40
Case Is = "FORM"
ActiveCell.Interior.ColorIndex = 7
Case Is = "VAC"
ActiveCell.Interior.ColorIndex = 8
Case Is = "RVEXT"
ActiveCell.Interior.ColorIndex = 9
Case Is = "CONG"
End Select
End If
End Sub
DD correspond à quoi?
D6:D36 est la plage de données où je dois appliquer les couleurs et
c'estcelle qui recoit la liste de validation. Qui se trouve sur une feuille
DATAavec nom défini= Etat
Si j'y arrive j'en aurais appris plus en 3 heures qu'en 6 mois
Pascal
"Dédé" a écrit dans le message de news:Heuuu pour être plus précis cela aurait dû apparaître comme ça :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Target, Range("A1:C3")) Is Nothing Then
MsgBox "Salut ! ce message apparaît car tu a sélectionné" & Chr(13)
&"unecellule de la plage A1 à C3", vbInformation, "Info..."
End If
End Sub
Traduction :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Permet de faire démarrer une macro lors de la sélection d'une
celluleoud'une plage de cellule ..
If Not Intersect(Target, Range("A1:C3")) Is Nothing Then
Si l'interscetion de ta sélection avec la plage de cellule A1:C3 est
"Vrai"cela fait démarrer la macro qui te met le msgbox ...
En fait, il y a deux négation ("if not" et "Nothing") qui s'annulent
mutuellement ...
On pourrait aussi faire cela comme suit :
If Intersect(Target, Range("A1:C3")) Is Nothing Then Exit Sub
MsgBox "Salut ! ce message apparaît car tu a sélectionné" & Chr(13)
&"unecellule de la plage A1 à C3", vbInformation, "Info..."
end sub
Mais on m'a souvent dit que la sortie d'une macro en début de macro
n'étaitpas très "pro ..." alors je pense que la santé de ton excel (et de
tesnerfs;-)) devrait mieux aller avec le premier exemple ;-))
Pour ce qui concerne les "Range("A1:C3")" c'est-à-dire la sélection
d'uneplage de cellule, tu peux abbréger ton code par [A1:C3] ... pour ce
quietdu résultat, il est le même sauf que tu économise ton clavier et que
çafaittoujours bien ... ;-))
Essaie de faire quelques tests et tu comprendra ;-))
Est-ce que tu t'en sors ?
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Dédé" a écrit dans le message de
news:Aie aie aie ;-)) Alors c'est même as les 5 % ;-))
L'exemple que je t'ai donné te permet de faire démarrer une macro
quesitusélectionne une cellule présente dans une plage donnée ...
Maintenant, tu me dis que tu a déjà fais plusieurs macros donc, je
vaispaste dire comment ça marche ;-))
Au fait, sur quoi tu bloque ??
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" a écrit dans le message de
news:Ok Merci mais dans ton code à quoi correspond [A1:C3]?
Et après THEN comment je fais éxécuter mes Macros?
Je suis encore plus nul que Julie Apparement
"Dédé" a écrit dans le message de
news:Salut Pascal !
Essaie ceci :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(DD, [A1:C3]) Is Nothing Then
'ta macro
End If
End Sub
Par contre, pour les message des inconnus qui débitent
n'importequoi,pasbesoin de se rabaisser à leur niveau et de leurs répondre ;-))
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" a écrit dans le message de
news:%Bonjour à tous qui pourrait m'aider?
J'ai un tableau Excel ("A1:R37") avec plusieurs macro qui
nedoivents'éxcuter que sur ("D6:D37").
Comment faire pour qu'elles ne s'éxcécutent pas sur les
autresplages,maisque mes autres macros continuent de s'éxécuter sur
l'intégralitédutableau???
Merci de me répondre
Pascal
Salut !
Ben je bloque pour un truc qui doit être tout bête ...
Voici le code en question ...
Private Sub Worksheet_SelectionChange(ByVal DD As Range)
If Not Intersect(DD, [D6:D36]) Is Nothing Then
Select Case DD
Case Is = ""
ActiveCell.Interior.ColorIndex = 0
ActiveCell.Font.ColorIndex = 0
Case Is = "Presbur"
ActiveCell.Interior.ColorIndex = 8
Case Is = "RVEXT"
ActiveCell.Interior.ColorIndex = 7
Case Is = "CONG"
ActiveCell.Interior.ColorIndex = 6
Case Is = "VAC"
ActiveCell.Interior.ColorIndex = 39
Case Is = "FORM"
ActiveCell.Interior.ColorIndex = 35
End Select
End If
End Sub
Le problème c'est que après validation, vu que ça va dans la cellule en
dessous, ben c'est sur cette cellule que la macro s'effectue et non pas
sur
la cellule d'origine ...
Donc, pour que cela fonctione, il faut revenir en arrière et pi là ça
marche
...
Si quelqu'un à une solution, je suis aussi prenneur ;-))
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
Sites de références,
Word :
http://faq.ms.word.free.fr/
Barre de menu disparues ? voir ici -
http://faq.ms.word.free.fr/Environnement/Environnement_reponses.htm#e1
Excel :
http://www.excelabo.net/
http://jacxl.free.fr/cours_xl/cours_xl_jac.html#accueil_xl
http://dj.joss.free.fr/faq.htm
http://perso.wanadoo.fr/frederic.sigonneau/
http://excel.1.free.fr/
"Pascal" a écrit dans le message de
news:Ok je te l'envoie Zippé, mais à quelle adresse ?
"Dédé" a écrit dans le message de news:
OCg$Bom est-ce que tu a reçu mon exemple dans ta BAL !!
C'est la base et normalement tu devrait y arriver aevc cela !!!
Maintenant, il faut faire attention à la casse, peut-être que c'est
une
erreur qui vient de là ...
Autrement, si c'est pas trop confidentiel, tu peux m'envoyer ton
classeurenBAL perso mais n'oublie pas de me mettre un mot car j'ai pas mal de
mondequi m'envoie plein de truc des NG et je sais plus vraiment à quoi cela
corresponds ;-))
Merci de ta prochaine réponse !
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" a écrit dans le message de
news:Bon j'ai copié ton code, mais bon je dois être réellement nul car ca
marchepas en appliquant mes références.
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal DD As
Range)If Not Intersect(DD, [D6:D36]) Is Nothing Then
Select Case [D6:D36]
Case Is = "PRESBUR"
ActiveCell.Interior.ColorIndex = 40
Case Is = "FORM"
ActiveCell.Interior.ColorIndex = 7
Case Is = "VAC"
ActiveCell.Interior.ColorIndex = 8
Case Is = "RVEXT"
ActiveCell.Interior.ColorIndex = 9
Case Is = "CONG"
End Select
End If
End Sub
DD correspond à quoi?
D6:D36 est la plage de données où je dois appliquer les couleurs et
c'estcelle qui recoit la liste de validation. Qui se trouve sur une
feuille
DATAavec nom défini= Etat
Si j'y arrive j'en aurais appris plus en 3 heures qu'en 6 mois
Pascal
"Dédé" a écrit dans le message de news:Heuuu pour être plus précis cela aurait dû apparaître comme ça :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Target, Range("A1:C3")) Is Nothing Then
MsgBox "Salut ! ce message apparaît car tu a sélectionné" &
Chr(13)
&"unecellule de la plage A1 à C3", vbInformation, "Info..."
End If
End Sub
Traduction :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Permet de faire démarrer une macro lors de la sélection d'une
celluleoud'une plage de cellule ..
If Not Intersect(Target, Range("A1:C3")) Is Nothing Then
Si l'interscetion de ta sélection avec la plage de cellule A1:C3
est
"Vrai"cela fait démarrer la macro qui te met le msgbox ...
En fait, il y a deux négation ("if not" et "Nothing") qui
s'annulent
mutuellement ...
On pourrait aussi faire cela comme suit :
If Intersect(Target, Range("A1:C3")) Is Nothing Then Exit Sub
MsgBox "Salut ! ce message apparaît car tu a sélectionné" &
Chr(13)
&"unecellule de la plage A1 à C3", vbInformation, "Info..."
end sub
Mais on m'a souvent dit que la sortie d'une macro en début de
macro
n'étaitpas très "pro ..." alors je pense que la santé de ton excel (et de
tesnerfs;-)) devrait mieux aller avec le premier exemple ;-))
Pour ce qui concerne les "Range("A1:C3")" c'est-à-dire la
sélection
d'uneplage de cellule, tu peux abbréger ton code par [A1:C3] ... pour
ce
quietdu résultat, il est le même sauf que tu économise ton clavier et
que
çafaittoujours bien ... ;-))
Essaie de faire quelques tests et tu comprendra ;-))
Est-ce que tu t'en sors ?
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Dédé" a écrit dans le message de
news:Aie aie aie ;-)) Alors c'est même as les 5 % ;-))
L'exemple que je t'ai donné te permet de faire démarrer une
macro
quesitusélectionne une cellule présente dans une plage donnée ...
Maintenant, tu me dis que tu a déjà fais plusieurs macros donc,
je
vaispaste dire comment ça marche ;-))
Au fait, sur quoi tu bloque ??
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" a écrit dans le message de
news:Ok Merci mais dans ton code à quoi correspond [A1:C3]?
Et après THEN comment je fais éxécuter mes Macros?
Je suis encore plus nul que Julie Apparement
"Dédé" a écrit dans le message de
news:Salut Pascal !
Essaie ceci :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(DD, [A1:C3]) Is Nothing Then
'ta macro
End If
End Sub
Par contre, pour les message des inconnus qui débitent
n'importequoi,pasbesoin de se rabaisser à leur niveau et de leurs répondre
;-))
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" a écrit dans le message de
news:%Bonjour à tous qui pourrait m'aider?
J'ai un tableau Excel ("A1:R37") avec plusieurs macro qui
nedoivents'éxcuter que sur ("D6:D37").
Comment faire pour qu'elles ne s'éxcécutent pas sur les
autresplages,maisque mes autres macros continuent de s'éxécuter sur
l'intégralitédutableau???
Merci de me répondre
Pascal
Salut !
Ben je bloque pour un truc qui doit être tout bête ...
Voici le code en question ...
Private Sub Worksheet_SelectionChange(ByVal DD As Range)
If Not Intersect(DD, [D6:D36]) Is Nothing Then
Select Case DD
Case Is = ""
ActiveCell.Interior.ColorIndex = 0
ActiveCell.Font.ColorIndex = 0
Case Is = "Presbur"
ActiveCell.Interior.ColorIndex = 8
Case Is = "RVEXT"
ActiveCell.Interior.ColorIndex = 7
Case Is = "CONG"
ActiveCell.Interior.ColorIndex = 6
Case Is = "VAC"
ActiveCell.Interior.ColorIndex = 39
Case Is = "FORM"
ActiveCell.Interior.ColorIndex = 35
End Select
End If
End Sub
Le problème c'est que après validation, vu que ça va dans la cellule en
dessous, ben c'est sur cette cellule que la macro s'effectue et non pas
sur
la cellule d'origine ...
Donc, pour que cela fonctione, il faut revenir en arrière et pi là ça
marche
...
Si quelqu'un à une solution, je suis aussi prenneur ;-))
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
Sites de références,
Word :
http://faq.ms.word.free.fr/
Barre de menu disparues ? voir ici -
http://faq.ms.word.free.fr/Environnement/Environnement_reponses.htm#e1
Excel :
http://www.excelabo.net/
http://jacxl.free.fr/cours_xl/cours_xl_jac.html#accueil_xl
http://dj.joss.free.fr/faq.htm
http://perso.wanadoo.fr/frederic.sigonneau/
http://excel.1.free.fr/
"Pascal" <pabd@wanadoo.fr> a écrit dans le message de
news:Ov2mNPVnDHA.1708@TK2MSFTNGP12.phx.gbl...
Ok je te l'envoie Zippé, mais à quelle adresse ?
"Dédé" <NsOuSgPuAsM12002@yahoo.fr> a écrit dans le message de news:
OCg$XIVnDHA.2512@TK2MSFTNGP09.phx.gbl...
Bom est-ce que tu a reçu mon exemple dans ta BAL !!
C'est la base et normalement tu devrait y arriver aevc cela !!!
Maintenant, il faut faire attention à la casse, peut-être que c'est
une
erreur qui vient de là ...
Autrement, si c'est pas trop confidentiel, tu peux m'envoyer ton
classeur
en
BAL perso mais n'oublie pas de me mettre un mot car j'ai pas mal de
monde
qui m'envoie plein de truc des NG et je sais plus vraiment à quoi cela
corresponds ;-))
Merci de ta prochaine réponse !
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" <pabd@wanadoo.fr> a écrit dans le message de
news:OadblKUnDHA.2528@TK2MSFTNGP12.phx.gbl...
Bon j'ai copié ton code, mais bon je dois être réellement nul car ca
marche
pas en appliquant mes références.
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal DD As
Range)
If Not Intersect(DD, [D6:D36]) Is Nothing Then
Select Case [D6:D36]
Case Is = "PRESBUR"
ActiveCell.Interior.ColorIndex = 40
Case Is = "FORM"
ActiveCell.Interior.ColorIndex = 7
Case Is = "VAC"
ActiveCell.Interior.ColorIndex = 8
Case Is = "RVEXT"
ActiveCell.Interior.ColorIndex = 9
Case Is = "CONG"
End Select
End If
End Sub
DD correspond à quoi?
D6:D36 est la plage de données où je dois appliquer les couleurs et
c'est
celle qui recoit la liste de validation. Qui se trouve sur une
feuille
DATA
avec nom défini= Etat
Si j'y arrive j'en aurais appris plus en 3 heures qu'en 6 mois
Pascal
"Dédé" <NsOuSgPuAsM12002@yahoo.fr> a écrit dans le message de news:
eQalj7SnDHA.1764@tk2msftngp13.phx.gbl...
Heuuu pour être plus précis cela aurait dû apparaître comme ça :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Target, Range("A1:C3")) Is Nothing Then
MsgBox "Salut ! ce message apparaît car tu a sélectionné" &
Chr(13)
&
"une
cellule de la plage A1 à C3", vbInformation, "Info..."
End If
End Sub
Traduction :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Permet de faire démarrer une macro lors de la sélection d'une
cellule
ou
d'une plage de cellule ..
If Not Intersect(Target, Range("A1:C3")) Is Nothing Then
Si l'interscetion de ta sélection avec la plage de cellule A1:C3
est
"Vrai"
cela fait démarrer la macro qui te met le msgbox ...
En fait, il y a deux négation ("if not" et "Nothing") qui
s'annulent
mutuellement ...
On pourrait aussi faire cela comme suit :
If Intersect(Target, Range("A1:C3")) Is Nothing Then Exit Sub
MsgBox "Salut ! ce message apparaît car tu a sélectionné" &
Chr(13)
&
"une
cellule de la plage A1 à C3", vbInformation, "Info..."
end sub
Mais on m'a souvent dit que la sortie d'une macro en début de
macro
n'était
pas très "pro ..." alors je pense que la santé de ton excel (et de
tes
nerfs
;-)) devrait mieux aller avec le premier exemple ;-))
Pour ce qui concerne les "Range("A1:C3")" c'est-à-dire la
sélection
d'une
plage de cellule, tu peux abbréger ton code par [A1:C3] ... pour
ce
qui
et
du résultat, il est le même sauf que tu économise ton clavier et
que
ça
fait
toujours bien ... ;-))
Essaie de faire quelques tests et tu comprendra ;-))
Est-ce que tu t'en sors ?
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Dédé" <NsOuSgPuAsM12002@yahoo.fr> a écrit dans le message de
news:O4pMYqSnDHA.1708@TK2MSFTNGP12.phx.gbl...
Aie aie aie ;-)) Alors c'est même as les 5 % ;-))
L'exemple que je t'ai donné te permet de faire démarrer une
macro
que
si
tu
sélectionne une cellule présente dans une plage donnée ...
Maintenant, tu me dis que tu a déjà fais plusieurs macros donc,
je
vais
pas
te dire comment ça marche ;-))
Au fait, sur quoi tu bloque ??
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" <pabd@wanadoo.fr> a écrit dans le message de
news:u20zHIKnDHA.2000@TK2MSFTNGP12.phx.gbl...
Ok Merci mais dans ton code à quoi correspond [A1:C3]?
Et après THEN comment je fais éxécuter mes Macros?
Je suis encore plus nul que Julie Apparement
"Dédé" <NsOuSgPuAsM12002@yahoo.fr> a écrit dans le message de
news:
uir1C9JnDHA.2444@TK2MSFTNGP09.phx.gbl...
Salut Pascal !
Essaie ceci :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(DD, [A1:C3]) Is Nothing Then
'ta macro
End If
End Sub
Par contre, pour les message des inconnus qui débitent
n'importe
quoi,
pas
besoin de se rabaisser à leur niveau et de leurs répondre
;-))
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" <pabd@wanadoo.fr> a écrit dans le message de
news:%23PZbhKJnDHA.2592@TK2MSFTNGP10.phx.gbl...
Bonjour à tous qui pourrait m'aider?
J'ai un tableau Excel ("A1:R37") avec plusieurs macro qui
ne
doivent
s'éxcuter que sur ("D6:D37").
Comment faire pour qu'elles ne s'éxcécutent pas sur les
autres
plages,
mais
que mes autres macros continuent de s'éxécuter sur
l'intégralité
du
tableau???
Merci de me répondre
Pascal
Salut !
Ben je bloque pour un truc qui doit être tout bête ...
Voici le code en question ...
Private Sub Worksheet_SelectionChange(ByVal DD As Range)
If Not Intersect(DD, [D6:D36]) Is Nothing Then
Select Case DD
Case Is = ""
ActiveCell.Interior.ColorIndex = 0
ActiveCell.Font.ColorIndex = 0
Case Is = "Presbur"
ActiveCell.Interior.ColorIndex = 8
Case Is = "RVEXT"
ActiveCell.Interior.ColorIndex = 7
Case Is = "CONG"
ActiveCell.Interior.ColorIndex = 6
Case Is = "VAC"
ActiveCell.Interior.ColorIndex = 39
Case Is = "FORM"
ActiveCell.Interior.ColorIndex = 35
End Select
End If
End Sub
Le problème c'est que après validation, vu que ça va dans la cellule en
dessous, ben c'est sur cette cellule que la macro s'effectue et non pas
sur
la cellule d'origine ...
Donc, pour que cela fonctione, il faut revenir en arrière et pi là ça
marche
...
Si quelqu'un à une solution, je suis aussi prenneur ;-))
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
Sites de références,
Word :
http://faq.ms.word.free.fr/
Barre de menu disparues ? voir ici -
http://faq.ms.word.free.fr/Environnement/Environnement_reponses.htm#e1
Excel :
http://www.excelabo.net/
http://jacxl.free.fr/cours_xl/cours_xl_jac.html#accueil_xl
http://dj.joss.free.fr/faq.htm
http://perso.wanadoo.fr/frederic.sigonneau/
http://excel.1.free.fr/
"Pascal" a écrit dans le message de
news:Ok je te l'envoie Zippé, mais à quelle adresse ?
"Dédé" a écrit dans le message de news:
OCg$Bom est-ce que tu a reçu mon exemple dans ta BAL !!
C'est la base et normalement tu devrait y arriver aevc cela !!!
Maintenant, il faut faire attention à la casse, peut-être que c'est
une
erreur qui vient de là ...
Autrement, si c'est pas trop confidentiel, tu peux m'envoyer ton
classeurenBAL perso mais n'oublie pas de me mettre un mot car j'ai pas mal de
mondequi m'envoie plein de truc des NG et je sais plus vraiment à quoi cela
corresponds ;-))
Merci de ta prochaine réponse !
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" a écrit dans le message de
news:Bon j'ai copié ton code, mais bon je dois être réellement nul car ca
marchepas en appliquant mes références.
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal DD As
Range)If Not Intersect(DD, [D6:D36]) Is Nothing Then
Select Case [D6:D36]
Case Is = "PRESBUR"
ActiveCell.Interior.ColorIndex = 40
Case Is = "FORM"
ActiveCell.Interior.ColorIndex = 7
Case Is = "VAC"
ActiveCell.Interior.ColorIndex = 8
Case Is = "RVEXT"
ActiveCell.Interior.ColorIndex = 9
Case Is = "CONG"
End Select
End If
End Sub
DD correspond à quoi?
D6:D36 est la plage de données où je dois appliquer les couleurs et
c'estcelle qui recoit la liste de validation. Qui se trouve sur une
feuille
DATAavec nom défini= Etat
Si j'y arrive j'en aurais appris plus en 3 heures qu'en 6 mois
Pascal
"Dédé" a écrit dans le message de news:Heuuu pour être plus précis cela aurait dû apparaître comme ça :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Target, Range("A1:C3")) Is Nothing Then
MsgBox "Salut ! ce message apparaît car tu a sélectionné" &
Chr(13)
&"unecellule de la plage A1 à C3", vbInformation, "Info..."
End If
End Sub
Traduction :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Permet de faire démarrer une macro lors de la sélection d'une
celluleoud'une plage de cellule ..
If Not Intersect(Target, Range("A1:C3")) Is Nothing Then
Si l'interscetion de ta sélection avec la plage de cellule A1:C3
est
"Vrai"cela fait démarrer la macro qui te met le msgbox ...
En fait, il y a deux négation ("if not" et "Nothing") qui
s'annulent
mutuellement ...
On pourrait aussi faire cela comme suit :
If Intersect(Target, Range("A1:C3")) Is Nothing Then Exit Sub
MsgBox "Salut ! ce message apparaît car tu a sélectionné" &
Chr(13)
&"unecellule de la plage A1 à C3", vbInformation, "Info..."
end sub
Mais on m'a souvent dit que la sortie d'une macro en début de
macro
n'étaitpas très "pro ..." alors je pense que la santé de ton excel (et de
tesnerfs;-)) devrait mieux aller avec le premier exemple ;-))
Pour ce qui concerne les "Range("A1:C3")" c'est-à-dire la
sélection
d'uneplage de cellule, tu peux abbréger ton code par [A1:C3] ... pour
ce
quietdu résultat, il est le même sauf que tu économise ton clavier et
que
çafaittoujours bien ... ;-))
Essaie de faire quelques tests et tu comprendra ;-))
Est-ce que tu t'en sors ?
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Dédé" a écrit dans le message de
news:Aie aie aie ;-)) Alors c'est même as les 5 % ;-))
L'exemple que je t'ai donné te permet de faire démarrer une
macro
quesitusélectionne une cellule présente dans une plage donnée ...
Maintenant, tu me dis que tu a déjà fais plusieurs macros donc,
je
vaispaste dire comment ça marche ;-))
Au fait, sur quoi tu bloque ??
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" a écrit dans le message de
news:Ok Merci mais dans ton code à quoi correspond [A1:C3]?
Et après THEN comment je fais éxécuter mes Macros?
Je suis encore plus nul que Julie Apparement
"Dédé" a écrit dans le message de
news:Salut Pascal !
Essaie ceci :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(DD, [A1:C3]) Is Nothing Then
'ta macro
End If
End Sub
Par contre, pour les message des inconnus qui débitent
n'importequoi,pasbesoin de se rabaisser à leur niveau et de leurs répondre
;-))
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" a écrit dans le message de
news:%Bonjour à tous qui pourrait m'aider?
J'ai un tableau Excel ("A1:R37") avec plusieurs macro qui
nedoivents'éxcuter que sur ("D6:D37").
Comment faire pour qu'elles ne s'éxcécutent pas sur les
autresplages,maisque mes autres macros continuent de s'éxécuter sur
l'intégralitédutableau???
Merci de me répondre
Pascal
Il fonctionne, mais pas si tu te sers de la liste déroulante de validation???
Il fonctionne, mais pas si tu te sers de la liste déroulante de validation???
Il fonctionne, mais pas si tu te sers de la liste déroulante de validation???
Il fonctionne, mais pas si tu te sers de la liste déroulante de
validation???
Si, si vérifie que les cellules comprenant la liste de validation sont
bien en
D6:D36 et non en C6:C36 !
AV
Il fonctionne, mais pas si tu te sers de la liste déroulante de
validation???
Si, si vérifie que les cellules comprenant la liste de validation sont
bien en
D6:D36 et non en C6:C36 !
AV
Il fonctionne, mais pas si tu te sers de la liste déroulante de
validation???
Si, si vérifie que les cellules comprenant la liste de validation sont
bien en
D6:D36 et non en C6:C36 !
AV
Merci ,
J'arrive juste donc , je découvre tes messages mainteant.
Mais le truc que tu décris, cela me l'a fait ce matin sur le fichier que
tu
m'avais envoyé.
Ce que je ne comprends c'est poourquoi ca affecte la cellule du
dessous?????
"Dédé" a écrit dans le message de news:Salut !
Ben je bloque pour un truc qui doit être tout bête ...
Voici le code en question ...
Private Sub Worksheet_SelectionChange(ByVal DD As Range)
If Not Intersect(DD, [D6:D36]) Is Nothing Then
Select Case DD
Case Is = ""
ActiveCell.Interior.ColorIndex = 0
ActiveCell.Font.ColorIndex = 0
Case Is = "Presbur"
ActiveCell.Interior.ColorIndex = 8
Case Is = "RVEXT"
ActiveCell.Interior.ColorIndex = 7
Case Is = "CONG"
ActiveCell.Interior.ColorIndex = 6
Case Is = "VAC"
ActiveCell.Interior.ColorIndex = 39
Case Is = "FORM"
ActiveCell.Interior.ColorIndex = 35
End Select
End If
End Sub
Le problème c'est que après validation, vu que ça va dans la cellule en
dessous, ben c'est sur cette cellule que la macro s'effectue et non pas
surla cellule d'origine ...
Donc, pour que cela fonctione, il faut revenir en arrière et pi là ça
marche...
Si quelqu'un à une solution, je suis aussi prenneur ;-))
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
Sites de références,
Word :
http://faq.ms.word.free.fr/
Barre de menu disparues ? voir ici -
http://faq.ms.word.free.fr/Environnement/Environnement_reponses.htm#e1
Excel :
http://www.excelabo.net/
http://jacxl.free.fr/cours_xl/cours_xl_jac.html#accueil_xl
http://dj.joss.free.fr/faq.htm
http://perso.wanadoo.fr/frederic.sigonneau/
http://excel.1.free.fr/
"Pascal" a écrit dans le message de
news:Ok je te l'envoie Zippé, mais à quelle adresse ?
"Dédé" a écrit dans le message de news:
OCg$Bom est-ce que tu a reçu mon exemple dans ta BAL !!
C'est la base et normalement tu devrait y arriver aevc cela !!!
Maintenant, il faut faire attention à la casse, peut-être que c'est
uneerreur qui vient de là ...
Autrement, si c'est pas trop confidentiel, tu peux m'envoyer ton
classeurenBAL perso mais n'oublie pas de me mettre un mot car j'ai pas mal de
mondequi m'envoie plein de truc des NG et je sais plus vraiment à quoi
cela
corresponds ;-))
Merci de ta prochaine réponse !
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" a écrit dans le message de
news:Bon j'ai copié ton code, mais bon je dois être réellement nul car
ca
marchepas en appliquant mes références.
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal DD As
Range)If Not Intersect(DD, [D6:D36]) Is Nothing Then
Select Case [D6:D36]
Case Is = "PRESBUR"
ActiveCell.Interior.ColorIndex = 40
Case Is = "FORM"
ActiveCell.Interior.ColorIndex = 7
Case Is = "VAC"
ActiveCell.Interior.ColorIndex = 8
Case Is = "RVEXT"
ActiveCell.Interior.ColorIndex = 9
Case Is = "CONG"
End Select
End If
End Sub
DD correspond à quoi?
D6:D36 est la plage de données où je dois appliquer les couleurs
et
c'estcelle qui recoit la liste de validation. Qui se trouve sur une
feuilleDATAavec nom défini= Etat
Si j'y arrive j'en aurais appris plus en 3 heures qu'en 6 mois
Pascal
"Dédé" a écrit dans le message de
news:
Heuuu pour être plus précis cela aurait dû apparaître comme ça :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Target, Range("A1:C3")) Is Nothing Then
MsgBox "Salut ! ce message apparaît car tu a sélectionné" &
Chr(13)&"unecellule de la plage A1 à C3", vbInformation, "Info..."
End If
End Sub
Traduction :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Permet de faire démarrer une macro lors de la sélection d'une
celluleoud'une plage de cellule ..
If Not Intersect(Target, Range("A1:C3")) Is Nothing Then
Si l'interscetion de ta sélection avec la plage de cellule A1:C3
est"Vrai"cela fait démarrer la macro qui te met le msgbox ...
En fait, il y a deux négation ("if not" et "Nothing") qui
s'annulentmutuellement ...
On pourrait aussi faire cela comme suit :
If Intersect(Target, Range("A1:C3")) Is Nothing Then Exit Sub
MsgBox "Salut ! ce message apparaît car tu a sélectionné" &
Chr(13)&"unecellule de la plage A1 à C3", vbInformation, "Info..."
end sub
Mais on m'a souvent dit que la sortie d'une macro en début de
macron'étaitpas très "pro ..." alors je pense que la santé de ton excel (et
de
tesnerfs;-)) devrait mieux aller avec le premier exemple ;-))
Pour ce qui concerne les "Range("A1:C3")" c'est-à-dire la
sélectiond'uneplage de cellule, tu peux abbréger ton code par [A1:C3] ... pour
cequietdu résultat, il est le même sauf que tu économise ton clavier et
queçafaittoujours bien ... ;-))
Essaie de faire quelques tests et tu comprendra ;-))
Est-ce que tu t'en sors ?
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Dédé" a écrit dans le message de
news:Aie aie aie ;-)) Alors c'est même as les 5 % ;-))
L'exemple que je t'ai donné te permet de faire démarrer une
macroquesitusélectionne une cellule présente dans une plage donnée ...
Maintenant, tu me dis que tu a déjà fais plusieurs macros
donc,
jevaispaste dire comment ça marche ;-))
Au fait, sur quoi tu bloque ??
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" a écrit dans le message de
news:Ok Merci mais dans ton code à quoi correspond [A1:C3]?
Et après THEN comment je fais éxécuter mes Macros?
Je suis encore plus nul que Julie Apparement
"Dédé" a écrit dans le message
de
news:Salut Pascal !
Essaie ceci :
Private Sub Worksheet_SelectionChange(ByVal Target As
Range)
If Not Intersect(DD, [A1:C3]) Is Nothing Then
'ta macro
End If
End Sub
Par contre, pour les message des inconnus qui débitent
n'importequoi,pasbesoin de se rabaisser à leur niveau et de leurs répondre
;-))
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" a écrit dans le message de
news:%Bonjour à tous qui pourrait m'aider?
J'ai un tableau Excel ("A1:R37") avec plusieurs macro
qui
nedoivents'éxcuter que sur ("D6:D37").
Comment faire pour qu'elles ne s'éxcécutent pas sur les
autresplages,maisque mes autres macros continuent de s'éxécuter sur
l'intégralitédutableau???
Merci de me répondre
Pascal
Merci ,
J'arrive juste donc , je découvre tes messages mainteant.
Mais le truc que tu décris, cela me l'a fait ce matin sur le fichier que
tu
m'avais envoyé.
Ce que je ne comprends c'est poourquoi ca affecte la cellule du
dessous?????
"Dédé" <NsOuSgPuAsM12002@yahoo.fr> a écrit dans le message de news:
OYbAYpWnDHA.688@TK2MSFTNGP10.phx.gbl...
Salut !
Ben je bloque pour un truc qui doit être tout bête ...
Voici le code en question ...
Private Sub Worksheet_SelectionChange(ByVal DD As Range)
If Not Intersect(DD, [D6:D36]) Is Nothing Then
Select Case DD
Case Is = ""
ActiveCell.Interior.ColorIndex = 0
ActiveCell.Font.ColorIndex = 0
Case Is = "Presbur"
ActiveCell.Interior.ColorIndex = 8
Case Is = "RVEXT"
ActiveCell.Interior.ColorIndex = 7
Case Is = "CONG"
ActiveCell.Interior.ColorIndex = 6
Case Is = "VAC"
ActiveCell.Interior.ColorIndex = 39
Case Is = "FORM"
ActiveCell.Interior.ColorIndex = 35
End Select
End If
End Sub
Le problème c'est que après validation, vu que ça va dans la cellule en
dessous, ben c'est sur cette cellule que la macro s'effectue et non pas
sur
la cellule d'origine ...
Donc, pour que cela fonctione, il faut revenir en arrière et pi là ça
marche
...
Si quelqu'un à une solution, je suis aussi prenneur ;-))
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
Sites de références,
Word :
http://faq.ms.word.free.fr/
Barre de menu disparues ? voir ici -
http://faq.ms.word.free.fr/Environnement/Environnement_reponses.htm#e1
Excel :
http://www.excelabo.net/
http://jacxl.free.fr/cours_xl/cours_xl_jac.html#accueil_xl
http://dj.joss.free.fr/faq.htm
http://perso.wanadoo.fr/frederic.sigonneau/
http://excel.1.free.fr/
"Pascal" <pabd@wanadoo.fr> a écrit dans le message de
news:Ov2mNPVnDHA.1708@TK2MSFTNGP12.phx.gbl...
Ok je te l'envoie Zippé, mais à quelle adresse ?
"Dédé" <NsOuSgPuAsM12002@yahoo.fr> a écrit dans le message de news:
OCg$XIVnDHA.2512@TK2MSFTNGP09.phx.gbl...
Bom est-ce que tu a reçu mon exemple dans ta BAL !!
C'est la base et normalement tu devrait y arriver aevc cela !!!
Maintenant, il faut faire attention à la casse, peut-être que c'est
une
erreur qui vient de là ...
Autrement, si c'est pas trop confidentiel, tu peux m'envoyer ton
classeur
en
BAL perso mais n'oublie pas de me mettre un mot car j'ai pas mal de
monde
qui m'envoie plein de truc des NG et je sais plus vraiment à quoi
cela
corresponds ;-))
Merci de ta prochaine réponse !
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" <pabd@wanadoo.fr> a écrit dans le message de
news:OadblKUnDHA.2528@TK2MSFTNGP12.phx.gbl...
Bon j'ai copié ton code, mais bon je dois être réellement nul car
ca
marche
pas en appliquant mes références.
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal DD As
Range)
If Not Intersect(DD, [D6:D36]) Is Nothing Then
Select Case [D6:D36]
Case Is = "PRESBUR"
ActiveCell.Interior.ColorIndex = 40
Case Is = "FORM"
ActiveCell.Interior.ColorIndex = 7
Case Is = "VAC"
ActiveCell.Interior.ColorIndex = 8
Case Is = "RVEXT"
ActiveCell.Interior.ColorIndex = 9
Case Is = "CONG"
End Select
End If
End Sub
DD correspond à quoi?
D6:D36 est la plage de données où je dois appliquer les couleurs
et
c'est
celle qui recoit la liste de validation. Qui se trouve sur une
feuille
DATA
avec nom défini= Etat
Si j'y arrive j'en aurais appris plus en 3 heures qu'en 6 mois
Pascal
"Dédé" <NsOuSgPuAsM12002@yahoo.fr> a écrit dans le message de
news:
eQalj7SnDHA.1764@tk2msftngp13.phx.gbl...
Heuuu pour être plus précis cela aurait dû apparaître comme ça :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Target, Range("A1:C3")) Is Nothing Then
MsgBox "Salut ! ce message apparaît car tu a sélectionné" &
Chr(13)
&
"une
cellule de la plage A1 à C3", vbInformation, "Info..."
End If
End Sub
Traduction :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Permet de faire démarrer une macro lors de la sélection d'une
cellule
ou
d'une plage de cellule ..
If Not Intersect(Target, Range("A1:C3")) Is Nothing Then
Si l'interscetion de ta sélection avec la plage de cellule A1:C3
est
"Vrai"
cela fait démarrer la macro qui te met le msgbox ...
En fait, il y a deux négation ("if not" et "Nothing") qui
s'annulent
mutuellement ...
On pourrait aussi faire cela comme suit :
If Intersect(Target, Range("A1:C3")) Is Nothing Then Exit Sub
MsgBox "Salut ! ce message apparaît car tu a sélectionné" &
Chr(13)
&
"une
cellule de la plage A1 à C3", vbInformation, "Info..."
end sub
Mais on m'a souvent dit que la sortie d'une macro en début de
macro
n'était
pas très "pro ..." alors je pense que la santé de ton excel (et
de
tes
nerfs
;-)) devrait mieux aller avec le premier exemple ;-))
Pour ce qui concerne les "Range("A1:C3")" c'est-à-dire la
sélection
d'une
plage de cellule, tu peux abbréger ton code par [A1:C3] ... pour
ce
qui
et
du résultat, il est le même sauf que tu économise ton clavier et
que
ça
fait
toujours bien ... ;-))
Essaie de faire quelques tests et tu comprendra ;-))
Est-ce que tu t'en sors ?
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Dédé" <NsOuSgPuAsM12002@yahoo.fr> a écrit dans le message de
news:O4pMYqSnDHA.1708@TK2MSFTNGP12.phx.gbl...
Aie aie aie ;-)) Alors c'est même as les 5 % ;-))
L'exemple que je t'ai donné te permet de faire démarrer une
macro
que
si
tu
sélectionne une cellule présente dans une plage donnée ...
Maintenant, tu me dis que tu a déjà fais plusieurs macros
donc,
je
vais
pas
te dire comment ça marche ;-))
Au fait, sur quoi tu bloque ??
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" <pabd@wanadoo.fr> a écrit dans le message de
news:u20zHIKnDHA.2000@TK2MSFTNGP12.phx.gbl...
Ok Merci mais dans ton code à quoi correspond [A1:C3]?
Et après THEN comment je fais éxécuter mes Macros?
Je suis encore plus nul que Julie Apparement
"Dédé" <NsOuSgPuAsM12002@yahoo.fr> a écrit dans le message
de
news:
uir1C9JnDHA.2444@TK2MSFTNGP09.phx.gbl...
Salut Pascal !
Essaie ceci :
Private Sub Worksheet_SelectionChange(ByVal Target As
Range)
If Not Intersect(DD, [A1:C3]) Is Nothing Then
'ta macro
End If
End Sub
Par contre, pour les message des inconnus qui débitent
n'importe
quoi,
pas
besoin de se rabaisser à leur niveau et de leurs répondre
;-))
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" <pabd@wanadoo.fr> a écrit dans le message de
news:%23PZbhKJnDHA.2592@TK2MSFTNGP10.phx.gbl...
Bonjour à tous qui pourrait m'aider?
J'ai un tableau Excel ("A1:R37") avec plusieurs macro
qui
ne
doivent
s'éxcuter que sur ("D6:D37").
Comment faire pour qu'elles ne s'éxcécutent pas sur les
autres
plages,
mais
que mes autres macros continuent de s'éxécuter sur
l'intégralité
du
tableau???
Merci de me répondre
Pascal
Merci ,
J'arrive juste donc , je découvre tes messages mainteant.
Mais le truc que tu décris, cela me l'a fait ce matin sur le fichier que
tu
m'avais envoyé.
Ce que je ne comprends c'est poourquoi ca affecte la cellule du
dessous?????
"Dédé" a écrit dans le message de news:Salut !
Ben je bloque pour un truc qui doit être tout bête ...
Voici le code en question ...
Private Sub Worksheet_SelectionChange(ByVal DD As Range)
If Not Intersect(DD, [D6:D36]) Is Nothing Then
Select Case DD
Case Is = ""
ActiveCell.Interior.ColorIndex = 0
ActiveCell.Font.ColorIndex = 0
Case Is = "Presbur"
ActiveCell.Interior.ColorIndex = 8
Case Is = "RVEXT"
ActiveCell.Interior.ColorIndex = 7
Case Is = "CONG"
ActiveCell.Interior.ColorIndex = 6
Case Is = "VAC"
ActiveCell.Interior.ColorIndex = 39
Case Is = "FORM"
ActiveCell.Interior.ColorIndex = 35
End Select
End If
End Sub
Le problème c'est que après validation, vu que ça va dans la cellule en
dessous, ben c'est sur cette cellule que la macro s'effectue et non pas
surla cellule d'origine ...
Donc, pour que cela fonctione, il faut revenir en arrière et pi là ça
marche...
Si quelqu'un à une solution, je suis aussi prenneur ;-))
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
Sites de références,
Word :
http://faq.ms.word.free.fr/
Barre de menu disparues ? voir ici -
http://faq.ms.word.free.fr/Environnement/Environnement_reponses.htm#e1
Excel :
http://www.excelabo.net/
http://jacxl.free.fr/cours_xl/cours_xl_jac.html#accueil_xl
http://dj.joss.free.fr/faq.htm
http://perso.wanadoo.fr/frederic.sigonneau/
http://excel.1.free.fr/
"Pascal" a écrit dans le message de
news:Ok je te l'envoie Zippé, mais à quelle adresse ?
"Dédé" a écrit dans le message de news:
OCg$Bom est-ce que tu a reçu mon exemple dans ta BAL !!
C'est la base et normalement tu devrait y arriver aevc cela !!!
Maintenant, il faut faire attention à la casse, peut-être que c'est
uneerreur qui vient de là ...
Autrement, si c'est pas trop confidentiel, tu peux m'envoyer ton
classeurenBAL perso mais n'oublie pas de me mettre un mot car j'ai pas mal de
mondequi m'envoie plein de truc des NG et je sais plus vraiment à quoi
cela
corresponds ;-))
Merci de ta prochaine réponse !
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" a écrit dans le message de
news:Bon j'ai copié ton code, mais bon je dois être réellement nul car
ca
marchepas en appliquant mes références.
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal DD As
Range)If Not Intersect(DD, [D6:D36]) Is Nothing Then
Select Case [D6:D36]
Case Is = "PRESBUR"
ActiveCell.Interior.ColorIndex = 40
Case Is = "FORM"
ActiveCell.Interior.ColorIndex = 7
Case Is = "VAC"
ActiveCell.Interior.ColorIndex = 8
Case Is = "RVEXT"
ActiveCell.Interior.ColorIndex = 9
Case Is = "CONG"
End Select
End If
End Sub
DD correspond à quoi?
D6:D36 est la plage de données où je dois appliquer les couleurs
et
c'estcelle qui recoit la liste de validation. Qui se trouve sur une
feuilleDATAavec nom défini= Etat
Si j'y arrive j'en aurais appris plus en 3 heures qu'en 6 mois
Pascal
"Dédé" a écrit dans le message de
news:
Heuuu pour être plus précis cela aurait dû apparaître comme ça :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Target, Range("A1:C3")) Is Nothing Then
MsgBox "Salut ! ce message apparaît car tu a sélectionné" &
Chr(13)&"unecellule de la plage A1 à C3", vbInformation, "Info..."
End If
End Sub
Traduction :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Permet de faire démarrer une macro lors de la sélection d'une
celluleoud'une plage de cellule ..
If Not Intersect(Target, Range("A1:C3")) Is Nothing Then
Si l'interscetion de ta sélection avec la plage de cellule A1:C3
est"Vrai"cela fait démarrer la macro qui te met le msgbox ...
En fait, il y a deux négation ("if not" et "Nothing") qui
s'annulentmutuellement ...
On pourrait aussi faire cela comme suit :
If Intersect(Target, Range("A1:C3")) Is Nothing Then Exit Sub
MsgBox "Salut ! ce message apparaît car tu a sélectionné" &
Chr(13)&"unecellule de la plage A1 à C3", vbInformation, "Info..."
end sub
Mais on m'a souvent dit que la sortie d'une macro en début de
macron'étaitpas très "pro ..." alors je pense que la santé de ton excel (et
de
tesnerfs;-)) devrait mieux aller avec le premier exemple ;-))
Pour ce qui concerne les "Range("A1:C3")" c'est-à-dire la
sélectiond'uneplage de cellule, tu peux abbréger ton code par [A1:C3] ... pour
cequietdu résultat, il est le même sauf que tu économise ton clavier et
queçafaittoujours bien ... ;-))
Essaie de faire quelques tests et tu comprendra ;-))
Est-ce que tu t'en sors ?
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Dédé" a écrit dans le message de
news:Aie aie aie ;-)) Alors c'est même as les 5 % ;-))
L'exemple que je t'ai donné te permet de faire démarrer une
macroquesitusélectionne une cellule présente dans une plage donnée ...
Maintenant, tu me dis que tu a déjà fais plusieurs macros
donc,
jevaispaste dire comment ça marche ;-))
Au fait, sur quoi tu bloque ??
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" a écrit dans le message de
news:Ok Merci mais dans ton code à quoi correspond [A1:C3]?
Et après THEN comment je fais éxécuter mes Macros?
Je suis encore plus nul que Julie Apparement
"Dédé" a écrit dans le message
de
news:Salut Pascal !
Essaie ceci :
Private Sub Worksheet_SelectionChange(ByVal Target As
Range)
If Not Intersect(DD, [A1:C3]) Is Nothing Then
'ta macro
End If
End Sub
Par contre, pour les message des inconnus qui débitent
n'importequoi,pasbesoin de se rabaisser à leur niveau et de leurs répondre
;-))
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" a écrit dans le message de
news:%Bonjour à tous qui pourrait m'aider?
J'ai un tableau Excel ("A1:R37") avec plusieurs macro
qui
nedoivents'éxcuter que sur ("D6:D37").
Comment faire pour qu'elles ne s'éxcécutent pas sur les
autresplages,maisque mes autres macros continuent de s'éxécuter sur
l'intégralitédutableau???
Merci de me répondre
Pascal
Si quelqu'un à une solution, je suis aussi prenneur ;-))
Et avec
Select Case DD.Value
Ca va pas mieux ?
PS : Je sais pas si l'utilisation de DD à la place de Target, ne va pas te
jouer
des tours un de ces quatres (confusion possible avec la réf de colonne
...)
AV
Si quelqu'un à une solution, je suis aussi prenneur ;-))
Et avec
Select Case DD.Value
Ca va pas mieux ?
PS : Je sais pas si l'utilisation de DD à la place de Target, ne va pas te
jouer
des tours un de ces quatres (confusion possible avec la réf de colonne
...)
AV
Si quelqu'un à une solution, je suis aussi prenneur ;-))
Et avec
Select Case DD.Value
Ca va pas mieux ?
PS : Je sais pas si l'utilisation de DD à la place de Target, ne va pas te
jouer
des tours un de ces quatres (confusion possible avec la réf de colonne
...)
AV
Bonsoir,
Essaye en remplaçant ActiveCell par DD (ou autre nom de variable
personnelle
pour remplacer Target si tu y tiens).
*Ou* décoche l'option 'Déplacer la sélection après validation' dans
l'onglet
Modification de la boite de dialogue OutilsOptions.
FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !
Salut !
Ben je bloque pour un truc qui doit être tout bête ...
Voici le code en question ...
Private Sub Worksheet_SelectionChange(ByVal DD As Range)
If Not Intersect(DD, [D6:D36]) Is Nothing Then
Select Case DD
Case Is = ""
ActiveCell.Interior.ColorIndex = 0
ActiveCell.Font.ColorIndex = 0
Case Is = "Presbur"
ActiveCell.Interior.ColorIndex = 8
Case Is = "RVEXT"
ActiveCell.Interior.ColorIndex = 7
Case Is = "CONG"
ActiveCell.Interior.ColorIndex = 6
Case Is = "VAC"
ActiveCell.Interior.ColorIndex = 39
Case Is = "FORM"
ActiveCell.Interior.ColorIndex = 35
End Select
End If
End Sub
Le problème c'est que après validation, vu que ça va dans la cellule en
dessous, ben c'est sur cette cellule que la macro s'effectue et non pas
sur
la cellule d'origine ...
Donc, pour que cela fonctione, il faut revenir en arrière et pi là ça
marche
...
Si quelqu'un à une solution, je suis aussi prenneur ;-))
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
Sites de références,
Word :
http://faq.ms.word.free.fr/
Barre de menu disparues ? voir ici -
http://faq.ms.word.free.fr/Environnement/Environnement_reponses.htm#e1
Excel :
http://www.excelabo.net/
http://jacxl.free.fr/cours_xl/cours_xl_jac.html#accueil_xl
http://dj.joss.free.fr/faq.htm
http://perso.wanadoo.fr/frederic.sigonneau/
http://excel.1.free.fr/
"Pascal" a écrit dans le message de
news:Ok je te l'envoie Zippé, mais à quelle adresse ?
"Dédé" a écrit dans le message de news:
OCg$Bom est-ce que tu a reçu mon exemple dans ta BAL !!
C'est la base et normalement tu devrait y arriver aevc cela !!!
Maintenant, il faut faire attention à la casse, peut-être que c'est
une
erreur qui vient de là ...
Autrement, si c'est pas trop confidentiel, tu peux m'envoyer ton
classeurenBAL perso mais n'oublie pas de me mettre un mot car j'ai pas mal de
mondequi m'envoie plein de truc des NG et je sais plus vraiment à quoi
cela
corresponds ;-))
Merci de ta prochaine réponse !
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" a écrit dans le message de
news:Bon j'ai copié ton code, mais bon je dois être réellement nul car
ca
marchepas en appliquant mes références.
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal DD As
Range)If Not Intersect(DD, [D6:D36]) Is Nothing Then
Select Case [D6:D36]
Case Is = "PRESBUR"
ActiveCell.Interior.ColorIndex = 40
Case Is = "FORM"
ActiveCell.Interior.ColorIndex = 7
Case Is = "VAC"
ActiveCell.Interior.ColorIndex = 8
Case Is = "RVEXT"
ActiveCell.Interior.ColorIndex = 9
Case Is = "CONG"
End Select
End If
End Sub
DD correspond à quoi?
D6:D36 est la plage de données où je dois appliquer les couleurs
et
c'estcelle qui recoit la liste de validation. Qui se trouve sur une
feuille
DATAavec nom défini= Etat
Si j'y arrive j'en aurais appris plus en 3 heures qu'en 6 mois
Pascal
"Dédé" a écrit dans le message de
news:
Heuuu pour être plus précis cela aurait dû apparaître comme ça :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Target, Range("A1:C3")) Is Nothing Then
MsgBox "Salut ! ce message apparaît car tu a sélectionné" &
Chr(13)
&"unecellule de la plage A1 à C3", vbInformation, "Info..."
End If
End Sub
Traduction :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Permet de faire démarrer une macro lors de la sélection d'une
celluleoud'une plage de cellule ..
If Not Intersect(Target, Range("A1:C3")) Is Nothing Then
Si l'interscetion de ta sélection avec la plage de cellule A1:C3
est
"Vrai"cela fait démarrer la macro qui te met le msgbox ...
En fait, il y a deux négation ("if not" et "Nothing") qui
s'annulent
mutuellement ...
On pourrait aussi faire cela comme suit :
If Intersect(Target, Range("A1:C3")) Is Nothing Then Exit Sub
MsgBox "Salut ! ce message apparaît car tu a sélectionné" &
Chr(13)
&"unecellule de la plage A1 à C3", vbInformation, "Info..."
end sub
Mais on m'a souvent dit que la sortie d'une macro en début de
macro
n'étaitpas très "pro ..." alors je pense que la santé de ton excel (et
de
tesnerfs;-)) devrait mieux aller avec le premier exemple ;-))
Pour ce qui concerne les "Range("A1:C3")" c'est-à-dire la
sélection
d'uneplage de cellule, tu peux abbréger ton code par [A1:C3] ... pour
ce
quietdu résultat, il est le même sauf que tu économise ton clavier et
que
çafaittoujours bien ... ;-))
Essaie de faire quelques tests et tu comprendra ;-))
Est-ce que tu t'en sors ?
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Dédé" a écrit dans le message de
news:Aie aie aie ;-)) Alors c'est même as les 5 % ;-))
L'exemple que je t'ai donné te permet de faire démarrer une
macro
quesitusélectionne une cellule présente dans une plage donnée ...
Maintenant, tu me dis que tu a déjà fais plusieurs macros
donc, je
vaispaste dire comment ça marche ;-))
Au fait, sur quoi tu bloque ??
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" a écrit dans le message de
news:Ok Merci mais dans ton code à quoi correspond [A1:C3]?
Et après THEN comment je fais éxécuter mes Macros?
Je suis encore plus nul que Julie Apparement
"Dédé" a écrit dans le message
de
news:Salut Pascal !
Essaie ceci :
Private Sub Worksheet_SelectionChange(ByVal Target As
Range)
If Not Intersect(DD, [A1:C3]) Is Nothing Then
'ta macro
End If
End Sub
Par contre, pour les message des inconnus qui débitent
n'importequoi,pasbesoin de se rabaisser à leur niveau et de leurs répondre
;-))
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" a écrit dans le message de
news:%Bonjour à tous qui pourrait m'aider?
J'ai un tableau Excel ("A1:R37") avec plusieurs macro
qui
nedoivents'éxcuter que sur ("D6:D37").
Comment faire pour qu'elles ne s'éxcécutent pas sur les
autresplages,maisque mes autres macros continuent de s'éxécuter sur
l'intégralitédutableau???
Merci de me répondre
Pascal
Bonsoir,
Essaye en remplaçant ActiveCell par DD (ou autre nom de variable
personnelle
pour remplacer Target si tu y tiens).
*Ou* décoche l'option 'Déplacer la sélection après validation' dans
l'onglet
Modification de la boite de dialogue OutilsOptions.
FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !
Salut !
Ben je bloque pour un truc qui doit être tout bête ...
Voici le code en question ...
Private Sub Worksheet_SelectionChange(ByVal DD As Range)
If Not Intersect(DD, [D6:D36]) Is Nothing Then
Select Case DD
Case Is = ""
ActiveCell.Interior.ColorIndex = 0
ActiveCell.Font.ColorIndex = 0
Case Is = "Presbur"
ActiveCell.Interior.ColorIndex = 8
Case Is = "RVEXT"
ActiveCell.Interior.ColorIndex = 7
Case Is = "CONG"
ActiveCell.Interior.ColorIndex = 6
Case Is = "VAC"
ActiveCell.Interior.ColorIndex = 39
Case Is = "FORM"
ActiveCell.Interior.ColorIndex = 35
End Select
End If
End Sub
Le problème c'est que après validation, vu que ça va dans la cellule en
dessous, ben c'est sur cette cellule que la macro s'effectue et non pas
sur
la cellule d'origine ...
Donc, pour que cela fonctione, il faut revenir en arrière et pi là ça
marche
...
Si quelqu'un à une solution, je suis aussi prenneur ;-))
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
Sites de références,
Word :
http://faq.ms.word.free.fr/
Barre de menu disparues ? voir ici -
http://faq.ms.word.free.fr/Environnement/Environnement_reponses.htm#e1
Excel :
http://www.excelabo.net/
http://jacxl.free.fr/cours_xl/cours_xl_jac.html#accueil_xl
http://dj.joss.free.fr/faq.htm
http://perso.wanadoo.fr/frederic.sigonneau/
http://excel.1.free.fr/
"Pascal" <pabd@wanadoo.fr> a écrit dans le message de
news:Ov2mNPVnDHA.1708@TK2MSFTNGP12.phx.gbl...
Ok je te l'envoie Zippé, mais à quelle adresse ?
"Dédé" <NsOuSgPuAsM12002@yahoo.fr> a écrit dans le message de news:
OCg$XIVnDHA.2512@TK2MSFTNGP09.phx.gbl...
Bom est-ce que tu a reçu mon exemple dans ta BAL !!
C'est la base et normalement tu devrait y arriver aevc cela !!!
Maintenant, il faut faire attention à la casse, peut-être que c'est
une
erreur qui vient de là ...
Autrement, si c'est pas trop confidentiel, tu peux m'envoyer ton
classeur
en
BAL perso mais n'oublie pas de me mettre un mot car j'ai pas mal de
monde
qui m'envoie plein de truc des NG et je sais plus vraiment à quoi
cela
corresponds ;-))
Merci de ta prochaine réponse !
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" <pabd@wanadoo.fr> a écrit dans le message de
news:OadblKUnDHA.2528@TK2MSFTNGP12.phx.gbl...
Bon j'ai copié ton code, mais bon je dois être réellement nul car
ca
marche
pas en appliquant mes références.
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal DD As
Range)
If Not Intersect(DD, [D6:D36]) Is Nothing Then
Select Case [D6:D36]
Case Is = "PRESBUR"
ActiveCell.Interior.ColorIndex = 40
Case Is = "FORM"
ActiveCell.Interior.ColorIndex = 7
Case Is = "VAC"
ActiveCell.Interior.ColorIndex = 8
Case Is = "RVEXT"
ActiveCell.Interior.ColorIndex = 9
Case Is = "CONG"
End Select
End If
End Sub
DD correspond à quoi?
D6:D36 est la plage de données où je dois appliquer les couleurs
et
c'est
celle qui recoit la liste de validation. Qui se trouve sur une
feuille
DATA
avec nom défini= Etat
Si j'y arrive j'en aurais appris plus en 3 heures qu'en 6 mois
Pascal
"Dédé" <NsOuSgPuAsM12002@yahoo.fr> a écrit dans le message de
news:
eQalj7SnDHA.1764@tk2msftngp13.phx.gbl...
Heuuu pour être plus précis cela aurait dû apparaître comme ça :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Target, Range("A1:C3")) Is Nothing Then
MsgBox "Salut ! ce message apparaît car tu a sélectionné" &
Chr(13)
&
"une
cellule de la plage A1 à C3", vbInformation, "Info..."
End If
End Sub
Traduction :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Permet de faire démarrer une macro lors de la sélection d'une
cellule
ou
d'une plage de cellule ..
If Not Intersect(Target, Range("A1:C3")) Is Nothing Then
Si l'interscetion de ta sélection avec la plage de cellule A1:C3
est
"Vrai"
cela fait démarrer la macro qui te met le msgbox ...
En fait, il y a deux négation ("if not" et "Nothing") qui
s'annulent
mutuellement ...
On pourrait aussi faire cela comme suit :
If Intersect(Target, Range("A1:C3")) Is Nothing Then Exit Sub
MsgBox "Salut ! ce message apparaît car tu a sélectionné" &
Chr(13)
&
"une
cellule de la plage A1 à C3", vbInformation, "Info..."
end sub
Mais on m'a souvent dit que la sortie d'une macro en début de
macro
n'était
pas très "pro ..." alors je pense que la santé de ton excel (et
de
tes
nerfs
;-)) devrait mieux aller avec le premier exemple ;-))
Pour ce qui concerne les "Range("A1:C3")" c'est-à-dire la
sélection
d'une
plage de cellule, tu peux abbréger ton code par [A1:C3] ... pour
ce
qui
et
du résultat, il est le même sauf que tu économise ton clavier et
que
ça
fait
toujours bien ... ;-))
Essaie de faire quelques tests et tu comprendra ;-))
Est-ce que tu t'en sors ?
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Dédé" <NsOuSgPuAsM12002@yahoo.fr> a écrit dans le message de
news:O4pMYqSnDHA.1708@TK2MSFTNGP12.phx.gbl...
Aie aie aie ;-)) Alors c'est même as les 5 % ;-))
L'exemple que je t'ai donné te permet de faire démarrer une
macro
que
si
tu
sélectionne une cellule présente dans une plage donnée ...
Maintenant, tu me dis que tu a déjà fais plusieurs macros
donc, je
vais
pas
te dire comment ça marche ;-))
Au fait, sur quoi tu bloque ??
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" <pabd@wanadoo.fr> a écrit dans le message de
news:u20zHIKnDHA.2000@TK2MSFTNGP12.phx.gbl...
Ok Merci mais dans ton code à quoi correspond [A1:C3]?
Et après THEN comment je fais éxécuter mes Macros?
Je suis encore plus nul que Julie Apparement
"Dédé" <NsOuSgPuAsM12002@yahoo.fr> a écrit dans le message
de
news:
uir1C9JnDHA.2444@TK2MSFTNGP09.phx.gbl...
Salut Pascal !
Essaie ceci :
Private Sub Worksheet_SelectionChange(ByVal Target As
Range)
If Not Intersect(DD, [A1:C3]) Is Nothing Then
'ta macro
End If
End Sub
Par contre, pour les message des inconnus qui débitent
n'importe
quoi,
pas
besoin de se rabaisser à leur niveau et de leurs répondre
;-))
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" <pabd@wanadoo.fr> a écrit dans le message de
news:%23PZbhKJnDHA.2592@TK2MSFTNGP10.phx.gbl...
Bonjour à tous qui pourrait m'aider?
J'ai un tableau Excel ("A1:R37") avec plusieurs macro
qui
ne
doivent
s'éxcuter que sur ("D6:D37").
Comment faire pour qu'elles ne s'éxcécutent pas sur les
autres
plages,
mais
que mes autres macros continuent de s'éxécuter sur
l'intégralité
du
tableau???
Merci de me répondre
Pascal
Bonsoir,
Essaye en remplaçant ActiveCell par DD (ou autre nom de variable
personnelle
pour remplacer Target si tu y tiens).
*Ou* décoche l'option 'Déplacer la sélection après validation' dans
l'onglet
Modification de la boite de dialogue OutilsOptions.
FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !
Salut !
Ben je bloque pour un truc qui doit être tout bête ...
Voici le code en question ...
Private Sub Worksheet_SelectionChange(ByVal DD As Range)
If Not Intersect(DD, [D6:D36]) Is Nothing Then
Select Case DD
Case Is = ""
ActiveCell.Interior.ColorIndex = 0
ActiveCell.Font.ColorIndex = 0
Case Is = "Presbur"
ActiveCell.Interior.ColorIndex = 8
Case Is = "RVEXT"
ActiveCell.Interior.ColorIndex = 7
Case Is = "CONG"
ActiveCell.Interior.ColorIndex = 6
Case Is = "VAC"
ActiveCell.Interior.ColorIndex = 39
Case Is = "FORM"
ActiveCell.Interior.ColorIndex = 35
End Select
End If
End Sub
Le problème c'est que après validation, vu que ça va dans la cellule en
dessous, ben c'est sur cette cellule que la macro s'effectue et non pas
sur
la cellule d'origine ...
Donc, pour que cela fonctione, il faut revenir en arrière et pi là ça
marche
...
Si quelqu'un à une solution, je suis aussi prenneur ;-))
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
Sites de références,
Word :
http://faq.ms.word.free.fr/
Barre de menu disparues ? voir ici -
http://faq.ms.word.free.fr/Environnement/Environnement_reponses.htm#e1
Excel :
http://www.excelabo.net/
http://jacxl.free.fr/cours_xl/cours_xl_jac.html#accueil_xl
http://dj.joss.free.fr/faq.htm
http://perso.wanadoo.fr/frederic.sigonneau/
http://excel.1.free.fr/
"Pascal" a écrit dans le message de
news:Ok je te l'envoie Zippé, mais à quelle adresse ?
"Dédé" a écrit dans le message de news:
OCg$Bom est-ce que tu a reçu mon exemple dans ta BAL !!
C'est la base et normalement tu devrait y arriver aevc cela !!!
Maintenant, il faut faire attention à la casse, peut-être que c'est
une
erreur qui vient de là ...
Autrement, si c'est pas trop confidentiel, tu peux m'envoyer ton
classeurenBAL perso mais n'oublie pas de me mettre un mot car j'ai pas mal de
mondequi m'envoie plein de truc des NG et je sais plus vraiment à quoi
cela
corresponds ;-))
Merci de ta prochaine réponse !
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" a écrit dans le message de
news:Bon j'ai copié ton code, mais bon je dois être réellement nul car
ca
marchepas en appliquant mes références.
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal DD As
Range)If Not Intersect(DD, [D6:D36]) Is Nothing Then
Select Case [D6:D36]
Case Is = "PRESBUR"
ActiveCell.Interior.ColorIndex = 40
Case Is = "FORM"
ActiveCell.Interior.ColorIndex = 7
Case Is = "VAC"
ActiveCell.Interior.ColorIndex = 8
Case Is = "RVEXT"
ActiveCell.Interior.ColorIndex = 9
Case Is = "CONG"
End Select
End If
End Sub
DD correspond à quoi?
D6:D36 est la plage de données où je dois appliquer les couleurs
et
c'estcelle qui recoit la liste de validation. Qui se trouve sur une
feuille
DATAavec nom défini= Etat
Si j'y arrive j'en aurais appris plus en 3 heures qu'en 6 mois
Pascal
"Dédé" a écrit dans le message de
news:
Heuuu pour être plus précis cela aurait dû apparaître comme ça :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Target, Range("A1:C3")) Is Nothing Then
MsgBox "Salut ! ce message apparaît car tu a sélectionné" &
Chr(13)
&"unecellule de la plage A1 à C3", vbInformation, "Info..."
End If
End Sub
Traduction :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Permet de faire démarrer une macro lors de la sélection d'une
celluleoud'une plage de cellule ..
If Not Intersect(Target, Range("A1:C3")) Is Nothing Then
Si l'interscetion de ta sélection avec la plage de cellule A1:C3
est
"Vrai"cela fait démarrer la macro qui te met le msgbox ...
En fait, il y a deux négation ("if not" et "Nothing") qui
s'annulent
mutuellement ...
On pourrait aussi faire cela comme suit :
If Intersect(Target, Range("A1:C3")) Is Nothing Then Exit Sub
MsgBox "Salut ! ce message apparaît car tu a sélectionné" &
Chr(13)
&"unecellule de la plage A1 à C3", vbInformation, "Info..."
end sub
Mais on m'a souvent dit que la sortie d'une macro en début de
macro
n'étaitpas très "pro ..." alors je pense que la santé de ton excel (et
de
tesnerfs;-)) devrait mieux aller avec le premier exemple ;-))
Pour ce qui concerne les "Range("A1:C3")" c'est-à-dire la
sélection
d'uneplage de cellule, tu peux abbréger ton code par [A1:C3] ... pour
ce
quietdu résultat, il est le même sauf que tu économise ton clavier et
que
çafaittoujours bien ... ;-))
Essaie de faire quelques tests et tu comprendra ;-))
Est-ce que tu t'en sors ?
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Dédé" a écrit dans le message de
news:Aie aie aie ;-)) Alors c'est même as les 5 % ;-))
L'exemple que je t'ai donné te permet de faire démarrer une
macro
quesitusélectionne une cellule présente dans une plage donnée ...
Maintenant, tu me dis que tu a déjà fais plusieurs macros
donc, je
vaispaste dire comment ça marche ;-))
Au fait, sur quoi tu bloque ??
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" a écrit dans le message de
news:Ok Merci mais dans ton code à quoi correspond [A1:C3]?
Et après THEN comment je fais éxécuter mes Macros?
Je suis encore plus nul que Julie Apparement
"Dédé" a écrit dans le message
de
news:Salut Pascal !
Essaie ceci :
Private Sub Worksheet_SelectionChange(ByVal Target As
Range)
If Not Intersect(DD, [A1:C3]) Is Nothing Then
'ta macro
End If
End Sub
Par contre, pour les message des inconnus qui débitent
n'importequoi,pasbesoin de se rabaisser à leur niveau et de leurs répondre
;-))
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" a écrit dans le message de
news:%Bonjour à tous qui pourrait m'aider?
J'ai un tableau Excel ("A1:R37") avec plusieurs macro
qui
nedoivents'éxcuter que sur ("D6:D37").
Comment faire pour qu'elles ne s'éxcécutent pas sur les
autresplages,maisque mes autres macros continuent de s'éxécuter sur
l'intégralitédutableau???
Merci de me répondre
Pascal
Salut Dédé,
J'ai recupéré ce code auprès d'Alain VALLON. Il fonctionne, mais pas si tu
te sers de la liste déroulante de validation???
Private Sub Worksheet_Change(ByVal zz As Range)
If Selection.Count > 1 Then Exit Sub
If Not Intersect(zz, [D6:D36]) Is Nothing Then
Select Case zz.Value
Case Is = ""
zz.Interior.ColorIndex = 0
zz.Font.ColorIndex = 0
Case Is = "Presbur"
zz.Interior.ColorIndex = 40
Case Is = "RVEXT"
zz.Interior.ColorIndex = 7
Case Is = "CONG"
zz.Interior.ColorIndex = 6
Case Is = "VAC"
zz.Interior.ColorIndex = 39
Case Is = "FORM"
zz.Interior.ColorIndex = 35
End Select
End If
End Sub
Merci pour ton aide
"Dédé" a écrit dans le message de news:Salut !
Ben je bloque pour un truc qui doit être tout bête ...
Voici le code en question ...
Private Sub Worksheet_SelectionChange(ByVal DD As Range)
If Not Intersect(DD, [D6:D36]) Is Nothing Then
Select Case DD
Case Is = ""
ActiveCell.Interior.ColorIndex = 0
ActiveCell.Font.ColorIndex = 0
Case Is = "Presbur"
ActiveCell.Interior.ColorIndex = 8
Case Is = "RVEXT"
ActiveCell.Interior.ColorIndex = 7
Case Is = "CONG"
ActiveCell.Interior.ColorIndex = 6
Case Is = "VAC"
ActiveCell.Interior.ColorIndex = 39
Case Is = "FORM"
ActiveCell.Interior.ColorIndex = 35
End Select
End If
End Sub
Le problème c'est que après validation, vu que ça va dans la cellule en
dessous, ben c'est sur cette cellule que la macro s'effectue et non pas
surla cellule d'origine ...
Donc, pour que cela fonctione, il faut revenir en arrière et pi là ça
marche...
Si quelqu'un à une solution, je suis aussi prenneur ;-))
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
Sites de références,
Word :
http://faq.ms.word.free.fr/
Barre de menu disparues ? voir ici -
http://faq.ms.word.free.fr/Environnement/Environnement_reponses.htm#e1
Excel :
http://www.excelabo.net/
http://jacxl.free.fr/cours_xl/cours_xl_jac.html#accueil_xl
http://dj.joss.free.fr/faq.htm
http://perso.wanadoo.fr/frederic.sigonneau/
http://excel.1.free.fr/
"Pascal" a écrit dans le message de
news:Ok je te l'envoie Zippé, mais à quelle adresse ?
"Dédé" a écrit dans le message de news:
OCg$Bom est-ce que tu a reçu mon exemple dans ta BAL !!
C'est la base et normalement tu devrait y arriver aevc cela !!!
Maintenant, il faut faire attention à la casse, peut-être que c'est
uneerreur qui vient de là ...
Autrement, si c'est pas trop confidentiel, tu peux m'envoyer ton
classeurenBAL perso mais n'oublie pas de me mettre un mot car j'ai pas mal de
mondequi m'envoie plein de truc des NG et je sais plus vraiment à quoi
cela
corresponds ;-))
Merci de ta prochaine réponse !
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" a écrit dans le message de
news:Bon j'ai copié ton code, mais bon je dois être réellement nul car
ca
marchepas en appliquant mes références.
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal DD As
Range)If Not Intersect(DD, [D6:D36]) Is Nothing Then
Select Case [D6:D36]
Case Is = "PRESBUR"
ActiveCell.Interior.ColorIndex = 40
Case Is = "FORM"
ActiveCell.Interior.ColorIndex = 7
Case Is = "VAC"
ActiveCell.Interior.ColorIndex = 8
Case Is = "RVEXT"
ActiveCell.Interior.ColorIndex = 9
Case Is = "CONG"
End Select
End If
End Sub
DD correspond à quoi?
D6:D36 est la plage de données où je dois appliquer les couleurs
et
c'estcelle qui recoit la liste de validation. Qui se trouve sur une
feuilleDATAavec nom défini= Etat
Si j'y arrive j'en aurais appris plus en 3 heures qu'en 6 mois
Pascal
"Dédé" a écrit dans le message de
news:
Heuuu pour être plus précis cela aurait dû apparaître comme ça :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Target, Range("A1:C3")) Is Nothing Then
MsgBox "Salut ! ce message apparaît car tu a sélectionné" &
Chr(13)&"unecellule de la plage A1 à C3", vbInformation, "Info..."
End If
End Sub
Traduction :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Permet de faire démarrer une macro lors de la sélection d'une
celluleoud'une plage de cellule ..
If Not Intersect(Target, Range("A1:C3")) Is Nothing Then
Si l'interscetion de ta sélection avec la plage de cellule A1:C3
est"Vrai"cela fait démarrer la macro qui te met le msgbox ...
En fait, il y a deux négation ("if not" et "Nothing") qui
s'annulentmutuellement ...
On pourrait aussi faire cela comme suit :
If Intersect(Target, Range("A1:C3")) Is Nothing Then Exit Sub
MsgBox "Salut ! ce message apparaît car tu a sélectionné" &
Chr(13)&"unecellule de la plage A1 à C3", vbInformation, "Info..."
end sub
Mais on m'a souvent dit que la sortie d'une macro en début de
macron'étaitpas très "pro ..." alors je pense que la santé de ton excel (et
de
tesnerfs;-)) devrait mieux aller avec le premier exemple ;-))
Pour ce qui concerne les "Range("A1:C3")" c'est-à-dire la
sélectiond'uneplage de cellule, tu peux abbréger ton code par [A1:C3] ... pour
cequietdu résultat, il est le même sauf que tu économise ton clavier et
queçafaittoujours bien ... ;-))
Essaie de faire quelques tests et tu comprendra ;-))
Est-ce que tu t'en sors ?
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Dédé" a écrit dans le message de
news:Aie aie aie ;-)) Alors c'est même as les 5 % ;-))
L'exemple que je t'ai donné te permet de faire démarrer une
macroquesitusélectionne une cellule présente dans une plage donnée ...
Maintenant, tu me dis que tu a déjà fais plusieurs macros
donc,
jevaispaste dire comment ça marche ;-))
Au fait, sur quoi tu bloque ??
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" a écrit dans le message de
news:Ok Merci mais dans ton code à quoi correspond [A1:C3]?
Et après THEN comment je fais éxécuter mes Macros?
Je suis encore plus nul que Julie Apparement
"Dédé" a écrit dans le message
de
news:Salut Pascal !
Essaie ceci :
Private Sub Worksheet_SelectionChange(ByVal Target As
Range)
If Not Intersect(DD, [A1:C3]) Is Nothing Then
'ta macro
End If
End Sub
Par contre, pour les message des inconnus qui débitent
n'importequoi,pasbesoin de se rabaisser à leur niveau et de leurs répondre
;-))
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" a écrit dans le message de
news:%Bonjour à tous qui pourrait m'aider?
J'ai un tableau Excel ("A1:R37") avec plusieurs macro
qui
nedoivents'éxcuter que sur ("D6:D37").
Comment faire pour qu'elles ne s'éxcécutent pas sur les
autresplages,maisque mes autres macros continuent de s'éxécuter sur
l'intégralitédutableau???
Merci de me répondre
Pascal
Salut Dédé,
J'ai recupéré ce code auprès d'Alain VALLON. Il fonctionne, mais pas si tu
te sers de la liste déroulante de validation???
Private Sub Worksheet_Change(ByVal zz As Range)
If Selection.Count > 1 Then Exit Sub
If Not Intersect(zz, [D6:D36]) Is Nothing Then
Select Case zz.Value
Case Is = ""
zz.Interior.ColorIndex = 0
zz.Font.ColorIndex = 0
Case Is = "Presbur"
zz.Interior.ColorIndex = 40
Case Is = "RVEXT"
zz.Interior.ColorIndex = 7
Case Is = "CONG"
zz.Interior.ColorIndex = 6
Case Is = "VAC"
zz.Interior.ColorIndex = 39
Case Is = "FORM"
zz.Interior.ColorIndex = 35
End Select
End If
End Sub
Merci pour ton aide
"Dédé" <NsOuSgPuAsM12002@yahoo.fr> a écrit dans le message de news:
OYbAYpWnDHA.688@TK2MSFTNGP10.phx.gbl...
Salut !
Ben je bloque pour un truc qui doit être tout bête ...
Voici le code en question ...
Private Sub Worksheet_SelectionChange(ByVal DD As Range)
If Not Intersect(DD, [D6:D36]) Is Nothing Then
Select Case DD
Case Is = ""
ActiveCell.Interior.ColorIndex = 0
ActiveCell.Font.ColorIndex = 0
Case Is = "Presbur"
ActiveCell.Interior.ColorIndex = 8
Case Is = "RVEXT"
ActiveCell.Interior.ColorIndex = 7
Case Is = "CONG"
ActiveCell.Interior.ColorIndex = 6
Case Is = "VAC"
ActiveCell.Interior.ColorIndex = 39
Case Is = "FORM"
ActiveCell.Interior.ColorIndex = 35
End Select
End If
End Sub
Le problème c'est que après validation, vu que ça va dans la cellule en
dessous, ben c'est sur cette cellule que la macro s'effectue et non pas
sur
la cellule d'origine ...
Donc, pour que cela fonctione, il faut revenir en arrière et pi là ça
marche
...
Si quelqu'un à une solution, je suis aussi prenneur ;-))
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
Sites de références,
Word :
http://faq.ms.word.free.fr/
Barre de menu disparues ? voir ici -
http://faq.ms.word.free.fr/Environnement/Environnement_reponses.htm#e1
Excel :
http://www.excelabo.net/
http://jacxl.free.fr/cours_xl/cours_xl_jac.html#accueil_xl
http://dj.joss.free.fr/faq.htm
http://perso.wanadoo.fr/frederic.sigonneau/
http://excel.1.free.fr/
"Pascal" <pabd@wanadoo.fr> a écrit dans le message de
news:Ov2mNPVnDHA.1708@TK2MSFTNGP12.phx.gbl...
Ok je te l'envoie Zippé, mais à quelle adresse ?
"Dédé" <NsOuSgPuAsM12002@yahoo.fr> a écrit dans le message de news:
OCg$XIVnDHA.2512@TK2MSFTNGP09.phx.gbl...
Bom est-ce que tu a reçu mon exemple dans ta BAL !!
C'est la base et normalement tu devrait y arriver aevc cela !!!
Maintenant, il faut faire attention à la casse, peut-être que c'est
une
erreur qui vient de là ...
Autrement, si c'est pas trop confidentiel, tu peux m'envoyer ton
classeur
en
BAL perso mais n'oublie pas de me mettre un mot car j'ai pas mal de
monde
qui m'envoie plein de truc des NG et je sais plus vraiment à quoi
cela
corresponds ;-))
Merci de ta prochaine réponse !
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" <pabd@wanadoo.fr> a écrit dans le message de
news:OadblKUnDHA.2528@TK2MSFTNGP12.phx.gbl...
Bon j'ai copié ton code, mais bon je dois être réellement nul car
ca
marche
pas en appliquant mes références.
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal DD As
Range)
If Not Intersect(DD, [D6:D36]) Is Nothing Then
Select Case [D6:D36]
Case Is = "PRESBUR"
ActiveCell.Interior.ColorIndex = 40
Case Is = "FORM"
ActiveCell.Interior.ColorIndex = 7
Case Is = "VAC"
ActiveCell.Interior.ColorIndex = 8
Case Is = "RVEXT"
ActiveCell.Interior.ColorIndex = 9
Case Is = "CONG"
End Select
End If
End Sub
DD correspond à quoi?
D6:D36 est la plage de données où je dois appliquer les couleurs
et
c'est
celle qui recoit la liste de validation. Qui se trouve sur une
feuille
DATA
avec nom défini= Etat
Si j'y arrive j'en aurais appris plus en 3 heures qu'en 6 mois
Pascal
"Dédé" <NsOuSgPuAsM12002@yahoo.fr> a écrit dans le message de
news:
eQalj7SnDHA.1764@tk2msftngp13.phx.gbl...
Heuuu pour être plus précis cela aurait dû apparaître comme ça :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Target, Range("A1:C3")) Is Nothing Then
MsgBox "Salut ! ce message apparaît car tu a sélectionné" &
Chr(13)
&
"une
cellule de la plage A1 à C3", vbInformation, "Info..."
End If
End Sub
Traduction :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Permet de faire démarrer une macro lors de la sélection d'une
cellule
ou
d'une plage de cellule ..
If Not Intersect(Target, Range("A1:C3")) Is Nothing Then
Si l'interscetion de ta sélection avec la plage de cellule A1:C3
est
"Vrai"
cela fait démarrer la macro qui te met le msgbox ...
En fait, il y a deux négation ("if not" et "Nothing") qui
s'annulent
mutuellement ...
On pourrait aussi faire cela comme suit :
If Intersect(Target, Range("A1:C3")) Is Nothing Then Exit Sub
MsgBox "Salut ! ce message apparaît car tu a sélectionné" &
Chr(13)
&
"une
cellule de la plage A1 à C3", vbInformation, "Info..."
end sub
Mais on m'a souvent dit que la sortie d'une macro en début de
macro
n'était
pas très "pro ..." alors je pense que la santé de ton excel (et
de
tes
nerfs
;-)) devrait mieux aller avec le premier exemple ;-))
Pour ce qui concerne les "Range("A1:C3")" c'est-à-dire la
sélection
d'une
plage de cellule, tu peux abbréger ton code par [A1:C3] ... pour
ce
qui
et
du résultat, il est le même sauf que tu économise ton clavier et
que
ça
fait
toujours bien ... ;-))
Essaie de faire quelques tests et tu comprendra ;-))
Est-ce que tu t'en sors ?
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Dédé" <NsOuSgPuAsM12002@yahoo.fr> a écrit dans le message de
news:O4pMYqSnDHA.1708@TK2MSFTNGP12.phx.gbl...
Aie aie aie ;-)) Alors c'est même as les 5 % ;-))
L'exemple que je t'ai donné te permet de faire démarrer une
macro
que
si
tu
sélectionne une cellule présente dans une plage donnée ...
Maintenant, tu me dis que tu a déjà fais plusieurs macros
donc,
je
vais
pas
te dire comment ça marche ;-))
Au fait, sur quoi tu bloque ??
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" <pabd@wanadoo.fr> a écrit dans le message de
news:u20zHIKnDHA.2000@TK2MSFTNGP12.phx.gbl...
Ok Merci mais dans ton code à quoi correspond [A1:C3]?
Et après THEN comment je fais éxécuter mes Macros?
Je suis encore plus nul que Julie Apparement
"Dédé" <NsOuSgPuAsM12002@yahoo.fr> a écrit dans le message
de
news:
uir1C9JnDHA.2444@TK2MSFTNGP09.phx.gbl...
Salut Pascal !
Essaie ceci :
Private Sub Worksheet_SelectionChange(ByVal Target As
Range)
If Not Intersect(DD, [A1:C3]) Is Nothing Then
'ta macro
End If
End Sub
Par contre, pour les message des inconnus qui débitent
n'importe
quoi,
pas
besoin de se rabaisser à leur niveau et de leurs répondre
;-))
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" <pabd@wanadoo.fr> a écrit dans le message de
news:%23PZbhKJnDHA.2592@TK2MSFTNGP10.phx.gbl...
Bonjour à tous qui pourrait m'aider?
J'ai un tableau Excel ("A1:R37") avec plusieurs macro
qui
ne
doivent
s'éxcuter que sur ("D6:D37").
Comment faire pour qu'elles ne s'éxcécutent pas sur les
autres
plages,
mais
que mes autres macros continuent de s'éxécuter sur
l'intégralité
du
tableau???
Merci de me répondre
Pascal
Salut Dédé,
J'ai recupéré ce code auprès d'Alain VALLON. Il fonctionne, mais pas si tu
te sers de la liste déroulante de validation???
Private Sub Worksheet_Change(ByVal zz As Range)
If Selection.Count > 1 Then Exit Sub
If Not Intersect(zz, [D6:D36]) Is Nothing Then
Select Case zz.Value
Case Is = ""
zz.Interior.ColorIndex = 0
zz.Font.ColorIndex = 0
Case Is = "Presbur"
zz.Interior.ColorIndex = 40
Case Is = "RVEXT"
zz.Interior.ColorIndex = 7
Case Is = "CONG"
zz.Interior.ColorIndex = 6
Case Is = "VAC"
zz.Interior.ColorIndex = 39
Case Is = "FORM"
zz.Interior.ColorIndex = 35
End Select
End If
End Sub
Merci pour ton aide
"Dédé" a écrit dans le message de news:Salut !
Ben je bloque pour un truc qui doit être tout bête ...
Voici le code en question ...
Private Sub Worksheet_SelectionChange(ByVal DD As Range)
If Not Intersect(DD, [D6:D36]) Is Nothing Then
Select Case DD
Case Is = ""
ActiveCell.Interior.ColorIndex = 0
ActiveCell.Font.ColorIndex = 0
Case Is = "Presbur"
ActiveCell.Interior.ColorIndex = 8
Case Is = "RVEXT"
ActiveCell.Interior.ColorIndex = 7
Case Is = "CONG"
ActiveCell.Interior.ColorIndex = 6
Case Is = "VAC"
ActiveCell.Interior.ColorIndex = 39
Case Is = "FORM"
ActiveCell.Interior.ColorIndex = 35
End Select
End If
End Sub
Le problème c'est que après validation, vu que ça va dans la cellule en
dessous, ben c'est sur cette cellule que la macro s'effectue et non pas
surla cellule d'origine ...
Donc, pour que cela fonctione, il faut revenir en arrière et pi là ça
marche...
Si quelqu'un à une solution, je suis aussi prenneur ;-))
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
Sites de références,
Word :
http://faq.ms.word.free.fr/
Barre de menu disparues ? voir ici -
http://faq.ms.word.free.fr/Environnement/Environnement_reponses.htm#e1
Excel :
http://www.excelabo.net/
http://jacxl.free.fr/cours_xl/cours_xl_jac.html#accueil_xl
http://dj.joss.free.fr/faq.htm
http://perso.wanadoo.fr/frederic.sigonneau/
http://excel.1.free.fr/
"Pascal" a écrit dans le message de
news:Ok je te l'envoie Zippé, mais à quelle adresse ?
"Dédé" a écrit dans le message de news:
OCg$Bom est-ce que tu a reçu mon exemple dans ta BAL !!
C'est la base et normalement tu devrait y arriver aevc cela !!!
Maintenant, il faut faire attention à la casse, peut-être que c'est
uneerreur qui vient de là ...
Autrement, si c'est pas trop confidentiel, tu peux m'envoyer ton
classeurenBAL perso mais n'oublie pas de me mettre un mot car j'ai pas mal de
mondequi m'envoie plein de truc des NG et je sais plus vraiment à quoi
cela
corresponds ;-))
Merci de ta prochaine réponse !
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" a écrit dans le message de
news:Bon j'ai copié ton code, mais bon je dois être réellement nul car
ca
marchepas en appliquant mes références.
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal DD As
Range)If Not Intersect(DD, [D6:D36]) Is Nothing Then
Select Case [D6:D36]
Case Is = "PRESBUR"
ActiveCell.Interior.ColorIndex = 40
Case Is = "FORM"
ActiveCell.Interior.ColorIndex = 7
Case Is = "VAC"
ActiveCell.Interior.ColorIndex = 8
Case Is = "RVEXT"
ActiveCell.Interior.ColorIndex = 9
Case Is = "CONG"
End Select
End If
End Sub
DD correspond à quoi?
D6:D36 est la plage de données où je dois appliquer les couleurs
et
c'estcelle qui recoit la liste de validation. Qui se trouve sur une
feuilleDATAavec nom défini= Etat
Si j'y arrive j'en aurais appris plus en 3 heures qu'en 6 mois
Pascal
"Dédé" a écrit dans le message de
news:
Heuuu pour être plus précis cela aurait dû apparaître comme ça :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Target, Range("A1:C3")) Is Nothing Then
MsgBox "Salut ! ce message apparaît car tu a sélectionné" &
Chr(13)&"unecellule de la plage A1 à C3", vbInformation, "Info..."
End If
End Sub
Traduction :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Permet de faire démarrer une macro lors de la sélection d'une
celluleoud'une plage de cellule ..
If Not Intersect(Target, Range("A1:C3")) Is Nothing Then
Si l'interscetion de ta sélection avec la plage de cellule A1:C3
est"Vrai"cela fait démarrer la macro qui te met le msgbox ...
En fait, il y a deux négation ("if not" et "Nothing") qui
s'annulentmutuellement ...
On pourrait aussi faire cela comme suit :
If Intersect(Target, Range("A1:C3")) Is Nothing Then Exit Sub
MsgBox "Salut ! ce message apparaît car tu a sélectionné" &
Chr(13)&"unecellule de la plage A1 à C3", vbInformation, "Info..."
end sub
Mais on m'a souvent dit que la sortie d'une macro en début de
macron'étaitpas très "pro ..." alors je pense que la santé de ton excel (et
de
tesnerfs;-)) devrait mieux aller avec le premier exemple ;-))
Pour ce qui concerne les "Range("A1:C3")" c'est-à-dire la
sélectiond'uneplage de cellule, tu peux abbréger ton code par [A1:C3] ... pour
cequietdu résultat, il est le même sauf que tu économise ton clavier et
queçafaittoujours bien ... ;-))
Essaie de faire quelques tests et tu comprendra ;-))
Est-ce que tu t'en sors ?
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Dédé" a écrit dans le message de
news:Aie aie aie ;-)) Alors c'est même as les 5 % ;-))
L'exemple que je t'ai donné te permet de faire démarrer une
macroquesitusélectionne une cellule présente dans une plage donnée ...
Maintenant, tu me dis que tu a déjà fais plusieurs macros
donc,
jevaispaste dire comment ça marche ;-))
Au fait, sur quoi tu bloque ??
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" a écrit dans le message de
news:Ok Merci mais dans ton code à quoi correspond [A1:C3]?
Et après THEN comment je fais éxécuter mes Macros?
Je suis encore plus nul que Julie Apparement
"Dédé" a écrit dans le message
de
news:Salut Pascal !
Essaie ceci :
Private Sub Worksheet_SelectionChange(ByVal Target As
Range)
If Not Intersect(DD, [A1:C3]) Is Nothing Then
'ta macro
End If
End Sub
Par contre, pour les message des inconnus qui débitent
n'importequoi,pasbesoin de se rabaisser à leur niveau et de leurs répondre
;-))
Salutations
Dédé
--
Pour répondre, enlever les lettres N O S P A M
"Pascal" a écrit dans le message de
news:%Bonjour à tous qui pourrait m'aider?
J'ai un tableau Excel ("A1:R37") avec plusieurs macro
qui
nedoivents'éxcuter que sur ("D6:D37").
Comment faire pour qu'elles ne s'éxcécutent pas sur les
autresplages,maisque mes autres macros continuent de s'éxécuter sur
l'intégralitédutableau???
Merci de me répondre
Pascal