La plage [c1:k2] n'est pas sélectionnée
Bonsoir Jacky,
Merci pour ton aide précieuse.
Il y a un truc que je ne m'explique pas. J'ai essayé ton classeur au
bureau ; qq secondes m'ont suffit pour m'apercevoir que tout fonctionnait
parfaitement.
Ce soir je fais un essai à la maison et ça ne fonctionne plus !
J'ai déroulé le code pas à pas :
1 - Si je supprime une valeur, tout est ok
2 - Si j'ajoute une valeur (avec le menu déroulant), les deux dernières
lignes du bout de code suivant ne s'exécutent pas :
'---------
Sub "
Dim ad As String
ad = ActiveCell.Address
Application.ScreenUpdating = False
[c1:k2].Copy
[c3].PasteSpecial Paste:=xlPasteValues
'---------
La plage [c1:k2] n'est pas sélectionnée !! (pourtant aucun msg de
débogage)
A part le fait d'être malade et d'avoir dormi 30 minutes la nuit dernière
(et donc de n'avoir peut-être pas les yeux en face des trous), je n'y
comprends rien !!
La "Private Sub Worksheet_Change(ByVal Target As Range)" détecte bien la
suppression ou l'ajout de données et la proc. "Mise_En_Forme_JJ(col)" se
lance bien dans les deux cas !!
Dans le cas qui ne fonctionne pas, mon curseur vient se placer chaque fois
sur la cellule "c3".
Je viens de remarquer que tout fonctionne bien si je saisie la valeur au
clavier + enter (sans passer par le menu déroulant).
Serait-ce une histoire de DoEvents ?
J'espère à bientôt,
JPRe...
Celui-ci devrait mieux convenir
http://www.cijoint.fr/cjlink.php?file=cj200901/cijgDKGUOu.xls
La plage [c1:k2] n'est pas sélectionnée
Bonsoir Jacky,
Merci pour ton aide précieuse.
Il y a un truc que je ne m'explique pas. J'ai essayé ton classeur au
bureau ; qq secondes m'ont suffit pour m'apercevoir que tout fonctionnait
parfaitement.
Ce soir je fais un essai à la maison et ça ne fonctionne plus !
J'ai déroulé le code pas à pas :
1 - Si je supprime une valeur, tout est ok
2 - Si j'ajoute une valeur (avec le menu déroulant), les deux dernières
lignes du bout de code suivant ne s'exécutent pas :
'---------
Sub "
Dim ad As String
ad = ActiveCell.Address
Application.ScreenUpdating = False
[c1:k2].Copy
[c3].PasteSpecial Paste:=xlPasteValues
'---------
La plage [c1:k2] n'est pas sélectionnée !! (pourtant aucun msg de
débogage)
A part le fait d'être malade et d'avoir dormi 30 minutes la nuit dernière
(et donc de n'avoir peut-être pas les yeux en face des trous), je n'y
comprends rien !!
La "Private Sub Worksheet_Change(ByVal Target As Range)" détecte bien la
suppression ou l'ajout de données et la proc. "Mise_En_Forme_JJ(col)" se
lance bien dans les deux cas !!
Dans le cas qui ne fonctionne pas, mon curseur vient se placer chaque fois
sur la cellule "c3".
Je viens de remarquer que tout fonctionne bien si je saisie la valeur au
clavier + enter (sans passer par le menu déroulant).
Serait-ce une histoire de DoEvents ?
J'espère à bientôt,
JP
Re...
Celui-ci devrait mieux convenir
http://www.cijoint.fr/cjlink.php?file=cj200901/cijgDKGUOu.xls
La plage [c1:k2] n'est pas sélectionnée
Bonsoir Jacky,
Merci pour ton aide précieuse.
Il y a un truc que je ne m'explique pas. J'ai essayé ton classeur au
bureau ; qq secondes m'ont suffit pour m'apercevoir que tout fonctionnait
parfaitement.
Ce soir je fais un essai à la maison et ça ne fonctionne plus !
J'ai déroulé le code pas à pas :
1 - Si je supprime une valeur, tout est ok
2 - Si j'ajoute une valeur (avec le menu déroulant), les deux dernières
lignes du bout de code suivant ne s'exécutent pas :
'---------
Sub "
Dim ad As String
ad = ActiveCell.Address
Application.ScreenUpdating = False
[c1:k2].Copy
[c3].PasteSpecial Paste:=xlPasteValues
'---------
La plage [c1:k2] n'est pas sélectionnée !! (pourtant aucun msg de
débogage)
A part le fait d'être malade et d'avoir dormi 30 minutes la nuit dernière
(et donc de n'avoir peut-être pas les yeux en face des trous), je n'y
comprends rien !!
La "Private Sub Worksheet_Change(ByVal Target As Range)" détecte bien la
suppression ou l'ajout de données et la proc. "Mise_En_Forme_JJ(col)" se
lance bien dans les deux cas !!
Dans le cas qui ne fonctionne pas, mon curseur vient se placer chaque fois
sur la cellule "c3".
Je viens de remarquer que tout fonctionne bien si je saisie la valeur au
clavier + enter (sans passer par le menu déroulant).
Serait-ce une histoire de DoEvents ?
J'espère à bientôt,
JPRe...
Celui-ci devrait mieux convenir
http://www.cijoint.fr/cjlink.php?file=cj200901/cijgDKGUOu.xls
Re...
Je n'arrive pas à reproduire ton problèmeLa plage [c1:k2] n'est pas sélectionnée
Il n'y a aucune sélection dans le code proposé
Sinon essaie comme ceci
'------------
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("$C$8:$K$40")) Is Nothing Then
Mise_En_Forme_JJ
End If
End Sub
'--------------
Sub Mise_En_Forme_JJ()
Application.ScreenUpdating = False
[c3:k4] = [c1:k2].Value
With Range("c3:k4").Font
.Name = "Verdana"
.FontStyle = "Gras"
.Size = 10
.ColorIndex = 15
End With
With Range("c3:k3").Characters(Start:=7, Length:=3).Font
.ColorIndex = 10
End With
With Range("c4:k4").Characters(Start:=7, Length:=3).Font
.ColorIndex = 3
End With
End Sub
'------------------------------
http://www.cijoint.fr/cjlink.php?file=cj200901/cijPF1vejW.xls
--
Bon rétablissement
JJ
"j-pascal" a écrit dans le message de news:Bonsoir Jacky,
Merci pour ton aide précieuse.
Il y a un truc que je ne m'explique pas. J'ai essayé ton classeur au bureau
; qq secondes m'ont suffit pour m'apercevoir que tout fonctionnait
parfaitement.
Ce soir je fais un essai à la maison et ça ne fonctionne plus !
J'ai déroulé le code pas à pas :
1 - Si je supprime une valeur, tout est ok
2 - Si j'ajoute une valeur (avec le menu déroulant), les deux dernières
lignes du bout de code suivant ne s'exécutent pas :
'---------
Sub "
Dim ad As String
ad = ActiveCell.Address
Application.ScreenUpdating = False
[c1:k2].Copy
[c3].PasteSpecial Paste:=xlPasteValues
'---------
La plage [c1:k2] n'est pas sélectionnée !! (pourtant aucun msg de débogage)
A part le fait d'être malade et d'avoir dormi 30 minutes la nuit dernière
(et donc de n'avoir peut-être pas les yeux en face des trous), je n'y
comprends rien !!
La "Private Sub Worksheet_Change(ByVal Target As Range)" détecte bien la
suppression ou l'ajout de données et la proc. "Mise_En_Forme_JJ(col)" se
lance bien dans les deux cas !!
Dans le cas qui ne fonctionne pas, mon curseur vient se placer chaque fois
sur la cellule "c3".
Je viens de remarquer que tout fonctionne bien si je saisie la valeur au
clavier + enter (sans passer par le menu déroulant).
Serait-ce une histoire de DoEvents ?
J'espère à bientôt,
JPRe...
Celui-ci devrait mieux convenir
http://www.cijoint.fr/cjlink.php?file=cj200901/cijgDKGUOu.xls
Re...
Je n'arrive pas à reproduire ton problème
La plage [c1:k2] n'est pas sélectionnée
Il n'y a aucune sélection dans le code proposé
Sinon essaie comme ceci
'------------
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("$C$8:$K$40")) Is Nothing Then
Mise_En_Forme_JJ
End If
End Sub
'--------------
Sub Mise_En_Forme_JJ()
Application.ScreenUpdating = False
[c3:k4] = [c1:k2].Value
With Range("c3:k4").Font
.Name = "Verdana"
.FontStyle = "Gras"
.Size = 10
.ColorIndex = 15
End With
With Range("c3:k3").Characters(Start:=7, Length:=3).Font
.ColorIndex = 10
End With
With Range("c4:k4").Characters(Start:=7, Length:=3).Font
.ColorIndex = 3
End With
End Sub
'------------------------------
http://www.cijoint.fr/cjlink.php?file=cj200901/cijPF1vejW.xls
--
Bon rétablissement
JJ
"j-pascal" <messages@venir.com> a écrit dans le message de news:
mn.14fc7d91fc188e36.81386@venir.com...
Bonsoir Jacky,
Merci pour ton aide précieuse.
Il y a un truc que je ne m'explique pas. J'ai essayé ton classeur au bureau
; qq secondes m'ont suffit pour m'apercevoir que tout fonctionnait
parfaitement.
Ce soir je fais un essai à la maison et ça ne fonctionne plus !
J'ai déroulé le code pas à pas :
1 - Si je supprime une valeur, tout est ok
2 - Si j'ajoute une valeur (avec le menu déroulant), les deux dernières
lignes du bout de code suivant ne s'exécutent pas :
'---------
Sub "
Dim ad As String
ad = ActiveCell.Address
Application.ScreenUpdating = False
[c1:k2].Copy
[c3].PasteSpecial Paste:=xlPasteValues
'---------
La plage [c1:k2] n'est pas sélectionnée !! (pourtant aucun msg de débogage)
A part le fait d'être malade et d'avoir dormi 30 minutes la nuit dernière
(et donc de n'avoir peut-être pas les yeux en face des trous), je n'y
comprends rien !!
La "Private Sub Worksheet_Change(ByVal Target As Range)" détecte bien la
suppression ou l'ajout de données et la proc. "Mise_En_Forme_JJ(col)" se
lance bien dans les deux cas !!
Dans le cas qui ne fonctionne pas, mon curseur vient se placer chaque fois
sur la cellule "c3".
Je viens de remarquer que tout fonctionne bien si je saisie la valeur au
clavier + enter (sans passer par le menu déroulant).
Serait-ce une histoire de DoEvents ?
J'espère à bientôt,
JP
Re...
Celui-ci devrait mieux convenir
http://www.cijoint.fr/cjlink.php?file=cj200901/cijgDKGUOu.xls
Re...
Je n'arrive pas à reproduire ton problèmeLa plage [c1:k2] n'est pas sélectionnée
Il n'y a aucune sélection dans le code proposé
Sinon essaie comme ceci
'------------
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("$C$8:$K$40")) Is Nothing Then
Mise_En_Forme_JJ
End If
End Sub
'--------------
Sub Mise_En_Forme_JJ()
Application.ScreenUpdating = False
[c3:k4] = [c1:k2].Value
With Range("c3:k4").Font
.Name = "Verdana"
.FontStyle = "Gras"
.Size = 10
.ColorIndex = 15
End With
With Range("c3:k3").Characters(Start:=7, Length:=3).Font
.ColorIndex = 10
End With
With Range("c4:k4").Characters(Start:=7, Length:=3).Font
.ColorIndex = 3
End With
End Sub
'------------------------------
http://www.cijoint.fr/cjlink.php?file=cj200901/cijPF1vejW.xls
--
Bon rétablissement
JJ
"j-pascal" a écrit dans le message de news:Bonsoir Jacky,
Merci pour ton aide précieuse.
Il y a un truc que je ne m'explique pas. J'ai essayé ton classeur au bureau
; qq secondes m'ont suffit pour m'apercevoir que tout fonctionnait
parfaitement.
Ce soir je fais un essai à la maison et ça ne fonctionne plus !
J'ai déroulé le code pas à pas :
1 - Si je supprime une valeur, tout est ok
2 - Si j'ajoute une valeur (avec le menu déroulant), les deux dernières
lignes du bout de code suivant ne s'exécutent pas :
'---------
Sub "
Dim ad As String
ad = ActiveCell.Address
Application.ScreenUpdating = False
[c1:k2].Copy
[c3].PasteSpecial Paste:=xlPasteValues
'---------
La plage [c1:k2] n'est pas sélectionnée !! (pourtant aucun msg de débogage)
A part le fait d'être malade et d'avoir dormi 30 minutes la nuit dernière
(et donc de n'avoir peut-être pas les yeux en face des trous), je n'y
comprends rien !!
La "Private Sub Worksheet_Change(ByVal Target As Range)" détecte bien la
suppression ou l'ajout de données et la proc. "Mise_En_Forme_JJ(col)" se
lance bien dans les deux cas !!
Dans le cas qui ne fonctionne pas, mon curseur vient se placer chaque fois
sur la cellule "c3".
Je viens de remarquer que tout fonctionne bien si je saisie la valeur au
clavier + enter (sans passer par le menu déroulant).
Serait-ce une histoire de DoEvents ?
J'espère à bientôt,
JPRe...
Celui-ci devrait mieux convenir
http://www.cijoint.fr/cjlink.php?file=cj200901/cijgDKGUOu.xls
Merci Jacky pour ta persévérance !
Ton dernier classeur fonctionne (chez moi !) dès lors qu'on supprime une
valeur ; par contre la sélection des dites valeurs actualise les formules
des lignes 1 et 2 mais pas la recopie sur les lignes 3 et 4.
Si, après avoir voulu entrer des valeurs (donc non actualisées), j'en
supprime une, alors tout s'actualise d'un coup (y compris donc, les
valeurs saisies !).
Observations :
- Si je shunte "Function SheetName() As Date" tout fonctionne
parfaitement. Je vais donc trouver une alternative à cette fonction (on
dirait que dans le cas où je saisie une valeur, cette fonction tourne en
boucle !!! et ne débouche plus sur le mise en forme !
- Si je saisie la valeur manuellement (sans passer par le menu déroulant)
tout fonctionne bien, y compris avec la "Function" !
Il me semble qu'au bureau (comme chez toi, semble-t-il) tout fonctionne
parfaitement. Je pense que le pb réside dans ma présente version d'Excel.
Quoiqu'il en soit je te remercie bcp pour ton aide, car en dehors de ce
pb, j'ai appris pas mal de chose sur ce type de mise en forme que je
pourrais largement réutiliser. Dans le cas présent, se passer de la
référence du nom de l'onglet n'est pas bien grave.
Merci encore pour ta patience,
JPRe...
Je n'arrive pas à reproduire ton problèmeLa plage [c1:k2] n'est pas sélectionnée
Il n'y a aucune sélection dans le code proposé
Sinon essaie comme ceci
'------------
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("$C$8:$K$40")) Is Nothing Then
Mise_En_Forme_JJ
End If
End Sub
'--------------
Sub Mise_En_Forme_JJ()
Application.ScreenUpdating = False
[c3:k4] = [c1:k2].Value
With Range("c3:k4").Font
.Name = "Verdana"
.FontStyle = "Gras"
.Size = 10
.ColorIndex = 15
End With
With Range("c3:k3").Characters(Start:=7, Length:=3).Font
.ColorIndex = 10
End With
With Range("c4:k4").Characters(Start:=7, Length:=3).Font
.ColorIndex = 3
End With
End Sub
'------------------------------
http://www.cijoint.fr/cjlink.php?file=cj200901/cijPF1vejW.xls
--
Bon rétablissement
JJ
"j-pascal" a écrit dans le message de news:Bonsoir Jacky,
Merci pour ton aide précieuse.
Il y a un truc que je ne m'explique pas. J'ai essayé ton classeur au
bureau ; qq secondes m'ont suffit pour m'apercevoir que tout
fonctionnait parfaitement.
Ce soir je fais un essai à la maison et ça ne fonctionne plus !
J'ai déroulé le code pas à pas :
1 - Si je supprime une valeur, tout est ok
2 - Si j'ajoute une valeur (avec le menu déroulant), les deux dernières
lignes du bout de code suivant ne s'exécutent pas :
'---------
Sub "
Dim ad As String
ad = ActiveCell.Address
Application.ScreenUpdating = False
[c1:k2].Copy
[c3].PasteSpecial Paste:=xlPasteValues
'---------
La plage [c1:k2] n'est pas sélectionnée !! (pourtant aucun msg de
débogage)
A part le fait d'être malade et d'avoir dormi 30 minutes la nuit
dernière (et donc de n'avoir peut-être pas les yeux en face des trous),
je n'y comprends rien !!
La "Private Sub Worksheet_Change(ByVal Target As Range)" détecte bien la
suppression ou l'ajout de données et la proc. "Mise_En_Forme_JJ(col)" se
lance bien dans les deux cas !!
Dans le cas qui ne fonctionne pas, mon curseur vient se placer chaque
fois sur la cellule "c3".
Je viens de remarquer que tout fonctionne bien si je saisie la valeur au
clavier + enter (sans passer par le menu déroulant).
Serait-ce une histoire de DoEvents ?
J'espère à bientôt,
JPRe...
Celui-ci devrait mieux convenir
http://www.cijoint.fr/cjlink.php?file=cj200901/cijgDKGUOu.xls
Merci Jacky pour ta persévérance !
Ton dernier classeur fonctionne (chez moi !) dès lors qu'on supprime une
valeur ; par contre la sélection des dites valeurs actualise les formules
des lignes 1 et 2 mais pas la recopie sur les lignes 3 et 4.
Si, après avoir voulu entrer des valeurs (donc non actualisées), j'en
supprime une, alors tout s'actualise d'un coup (y compris donc, les
valeurs saisies !).
Observations :
- Si je shunte "Function SheetName() As Date" tout fonctionne
parfaitement. Je vais donc trouver une alternative à cette fonction (on
dirait que dans le cas où je saisie une valeur, cette fonction tourne en
boucle !!! et ne débouche plus sur le mise en forme !
- Si je saisie la valeur manuellement (sans passer par le menu déroulant)
tout fonctionne bien, y compris avec la "Function" !
Il me semble qu'au bureau (comme chez toi, semble-t-il) tout fonctionne
parfaitement. Je pense que le pb réside dans ma présente version d'Excel.
Quoiqu'il en soit je te remercie bcp pour ton aide, car en dehors de ce
pb, j'ai appris pas mal de chose sur ce type de mise en forme que je
pourrais largement réutiliser. Dans le cas présent, se passer de la
référence du nom de l'onglet n'est pas bien grave.
Merci encore pour ta patience,
JP
Re...
Je n'arrive pas à reproduire ton problème
La plage [c1:k2] n'est pas sélectionnée
Il n'y a aucune sélection dans le code proposé
Sinon essaie comme ceci
'------------
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("$C$8:$K$40")) Is Nothing Then
Mise_En_Forme_JJ
End If
End Sub
'--------------
Sub Mise_En_Forme_JJ()
Application.ScreenUpdating = False
[c3:k4] = [c1:k2].Value
With Range("c3:k4").Font
.Name = "Verdana"
.FontStyle = "Gras"
.Size = 10
.ColorIndex = 15
End With
With Range("c3:k3").Characters(Start:=7, Length:=3).Font
.ColorIndex = 10
End With
With Range("c4:k4").Characters(Start:=7, Length:=3).Font
.ColorIndex = 3
End With
End Sub
'------------------------------
http://www.cijoint.fr/cjlink.php?file=cj200901/cijPF1vejW.xls
--
Bon rétablissement
JJ
"j-pascal" <messages@venir.com> a écrit dans le message de news:
mn.14fc7d91fc188e36.81386@venir.com...
Bonsoir Jacky,
Merci pour ton aide précieuse.
Il y a un truc que je ne m'explique pas. J'ai essayé ton classeur au
bureau ; qq secondes m'ont suffit pour m'apercevoir que tout
fonctionnait parfaitement.
Ce soir je fais un essai à la maison et ça ne fonctionne plus !
J'ai déroulé le code pas à pas :
1 - Si je supprime une valeur, tout est ok
2 - Si j'ajoute une valeur (avec le menu déroulant), les deux dernières
lignes du bout de code suivant ne s'exécutent pas :
'---------
Sub "
Dim ad As String
ad = ActiveCell.Address
Application.ScreenUpdating = False
[c1:k2].Copy
[c3].PasteSpecial Paste:=xlPasteValues
'---------
La plage [c1:k2] n'est pas sélectionnée !! (pourtant aucun msg de
débogage)
A part le fait d'être malade et d'avoir dormi 30 minutes la nuit
dernière (et donc de n'avoir peut-être pas les yeux en face des trous),
je n'y comprends rien !!
La "Private Sub Worksheet_Change(ByVal Target As Range)" détecte bien la
suppression ou l'ajout de données et la proc. "Mise_En_Forme_JJ(col)" se
lance bien dans les deux cas !!
Dans le cas qui ne fonctionne pas, mon curseur vient se placer chaque
fois sur la cellule "c3".
Je viens de remarquer que tout fonctionne bien si je saisie la valeur au
clavier + enter (sans passer par le menu déroulant).
Serait-ce une histoire de DoEvents ?
J'espère à bientôt,
JP
Re...
Celui-ci devrait mieux convenir
http://www.cijoint.fr/cjlink.php?file=cj200901/cijgDKGUOu.xls
Merci Jacky pour ta persévérance !
Ton dernier classeur fonctionne (chez moi !) dès lors qu'on supprime une
valeur ; par contre la sélection des dites valeurs actualise les formules
des lignes 1 et 2 mais pas la recopie sur les lignes 3 et 4.
Si, après avoir voulu entrer des valeurs (donc non actualisées), j'en
supprime une, alors tout s'actualise d'un coup (y compris donc, les
valeurs saisies !).
Observations :
- Si je shunte "Function SheetName() As Date" tout fonctionne
parfaitement. Je vais donc trouver une alternative à cette fonction (on
dirait que dans le cas où je saisie une valeur, cette fonction tourne en
boucle !!! et ne débouche plus sur le mise en forme !
- Si je saisie la valeur manuellement (sans passer par le menu déroulant)
tout fonctionne bien, y compris avec la "Function" !
Il me semble qu'au bureau (comme chez toi, semble-t-il) tout fonctionne
parfaitement. Je pense que le pb réside dans ma présente version d'Excel.
Quoiqu'il en soit je te remercie bcp pour ton aide, car en dehors de ce
pb, j'ai appris pas mal de chose sur ce type de mise en forme que je
pourrais largement réutiliser. Dans le cas présent, se passer de la
référence du nom de l'onglet n'est pas bien grave.
Merci encore pour ta patience,
JPRe...
Je n'arrive pas à reproduire ton problèmeLa plage [c1:k2] n'est pas sélectionnée
Il n'y a aucune sélection dans le code proposé
Sinon essaie comme ceci
'------------
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("$C$8:$K$40")) Is Nothing Then
Mise_En_Forme_JJ
End If
End Sub
'--------------
Sub Mise_En_Forme_JJ()
Application.ScreenUpdating = False
[c3:k4] = [c1:k2].Value
With Range("c3:k4").Font
.Name = "Verdana"
.FontStyle = "Gras"
.Size = 10
.ColorIndex = 15
End With
With Range("c3:k3").Characters(Start:=7, Length:=3).Font
.ColorIndex = 10
End With
With Range("c4:k4").Characters(Start:=7, Length:=3).Font
.ColorIndex = 3
End With
End Sub
'------------------------------
http://www.cijoint.fr/cjlink.php?file=cj200901/cijPF1vejW.xls
--
Bon rétablissement
JJ
"j-pascal" a écrit dans le message de news:Bonsoir Jacky,
Merci pour ton aide précieuse.
Il y a un truc que je ne m'explique pas. J'ai essayé ton classeur au
bureau ; qq secondes m'ont suffit pour m'apercevoir que tout
fonctionnait parfaitement.
Ce soir je fais un essai à la maison et ça ne fonctionne plus !
J'ai déroulé le code pas à pas :
1 - Si je supprime une valeur, tout est ok
2 - Si j'ajoute une valeur (avec le menu déroulant), les deux dernières
lignes du bout de code suivant ne s'exécutent pas :
'---------
Sub "
Dim ad As String
ad = ActiveCell.Address
Application.ScreenUpdating = False
[c1:k2].Copy
[c3].PasteSpecial Paste:=xlPasteValues
'---------
La plage [c1:k2] n'est pas sélectionnée !! (pourtant aucun msg de
débogage)
A part le fait d'être malade et d'avoir dormi 30 minutes la nuit
dernière (et donc de n'avoir peut-être pas les yeux en face des trous),
je n'y comprends rien !!
La "Private Sub Worksheet_Change(ByVal Target As Range)" détecte bien la
suppression ou l'ajout de données et la proc. "Mise_En_Forme_JJ(col)" se
lance bien dans les deux cas !!
Dans le cas qui ne fonctionne pas, mon curseur vient se placer chaque
fois sur la cellule "c3".
Je viens de remarquer que tout fonctionne bien si je saisie la valeur au
clavier + enter (sans passer par le menu déroulant).
Serait-ce une histoire de DoEvents ?
J'espère à bientôt,
JPRe...
Celui-ci devrait mieux convenir
http://www.cijoint.fr/cjlink.php?file=cj200901/cijgDKGUOu.xls
Re...
Bizarre ton problème
Teste ceci
Efface c3:k4
Et entre une donnée dans une cellule (plage c8:k40) par la liste de
validation
c3:k4 doit se mettre à jour
--
Salutations
JJ
"j-pascal" a écrit dans le message de news:Merci Jacky pour ta persévérance !
Ton dernier classeur fonctionne (chez moi !) dès lors qu'on supprime une
valeur ; par contre la sélection des dites valeurs actualise les formules
des lignes 1 et 2 mais pas la recopie sur les lignes 3 et 4.
Si, après avoir voulu entrer des valeurs (donc non actualisées), j'en
supprime une, alors tout s'actualise d'un coup (y compris donc, les valeurs
saisies !).
Observations :
- Si je shunte "Function SheetName() As Date" tout fonctionne parfaitement.
Je vais donc trouver une alternative à cette fonction (on dirait que dans
le cas où je saisie une valeur, cette fonction tourne en boucle !!! et ne
débouche plus sur le mise en forme !
- Si je saisie la valeur manuellement (sans passer par le menu déroulant)
tout fonctionne bien, y compris avec la "Function" !
Il me semble qu'au bureau (comme chez toi, semble-t-il) tout fonctionne
parfaitement. Je pense que le pb réside dans ma présente version d'Excel.
Quoiqu'il en soit je te remercie bcp pour ton aide, car en dehors de ce pb,
j'ai appris pas mal de chose sur ce type de mise en forme que je pourrais
largement réutiliser. Dans le cas présent, se passer de la référence du nom
de l'onglet n'est pas bien grave.
Merci encore pour ta patience,
JPRe...
Je n'arrive pas à reproduire ton problèmeLa plage [c1:k2] n'est pas sélectionnée
Il n'y a aucune sélection dans le code proposé
Sinon essaie comme ceci
'------------
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("$C$8:$K$40")) Is Nothing Then
Mise_En_Forme_JJ
End If
End Sub
'--------------
Sub Mise_En_Forme_JJ()
Application.ScreenUpdating = False
[c3:k4] = [c1:k2].Value
With Range("c3:k4").Font
.Name = "Verdana"
.FontStyle = "Gras"
.Size = 10
.ColorIndex = 15
End With
With Range("c3:k3").Characters(Start:=7, Length:=3).Font
.ColorIndex = 10
End With
With Range("c4:k4").Characters(Start:=7, Length:=3).Font
.ColorIndex = 3
End With
End Sub
'------------------------------
http://www.cijoint.fr/cjlink.php?file=cj200901/cijPF1vejW.xls
--
Bon rétablissement
JJ
"j-pascal" a écrit dans le message de news:Bonsoir Jacky,
Merci pour ton aide précieuse.
Il y a un truc que je ne m'explique pas. J'ai essayé ton classeur au
bureau ; qq secondes m'ont suffit pour m'apercevoir que tout fonctionnait
parfaitement.
Ce soir je fais un essai à la maison et ça ne fonctionne plus !
J'ai déroulé le code pas à pas :
1 - Si je supprime une valeur, tout est ok
2 - Si j'ajoute une valeur (avec le menu déroulant), les deux dernières
lignes du bout de code suivant ne s'exécutent pas :
'---------
Sub "
Dim ad As String
ad = ActiveCell.Address
Application.ScreenUpdating = False
[c1:k2].Copy
[c3].PasteSpecial Paste:=xlPasteValues
'---------
La plage [c1:k2] n'est pas sélectionnée !! (pourtant aucun msg de
débogage)
A part le fait d'être malade et d'avoir dormi 30 minutes la nuit dernière
(et donc de n'avoir peut-être pas les yeux en face des trous), je n'y
comprends rien !!
La "Private Sub Worksheet_Change(ByVal Target As Range)" détecte bien la
suppression ou l'ajout de données et la proc. "Mise_En_Forme_JJ(col)" se
lance bien dans les deux cas !!
Dans le cas qui ne fonctionne pas, mon curseur vient se placer chaque
fois sur la cellule "c3".
Je viens de remarquer que tout fonctionne bien si je saisie la valeur au
clavier + enter (sans passer par le menu déroulant).
Serait-ce une histoire de DoEvents ?
J'espère à bientôt,
JPRe...
Celui-ci devrait mieux convenir
http://www.cijoint.fr/cjlink.php?file=cj200901/cijgDKGUOu.xls
Re...
Bizarre ton problème
Teste ceci
Efface c3:k4
Et entre une donnée dans une cellule (plage c8:k40) par la liste de
validation
c3:k4 doit se mettre à jour
--
Salutations
JJ
"j-pascal" <messages@venir.com> a écrit dans le message de news:
mn.1a997d912c226707.81386@venir.com...
Merci Jacky pour ta persévérance !
Ton dernier classeur fonctionne (chez moi !) dès lors qu'on supprime une
valeur ; par contre la sélection des dites valeurs actualise les formules
des lignes 1 et 2 mais pas la recopie sur les lignes 3 et 4.
Si, après avoir voulu entrer des valeurs (donc non actualisées), j'en
supprime une, alors tout s'actualise d'un coup (y compris donc, les valeurs
saisies !).
Observations :
- Si je shunte "Function SheetName() As Date" tout fonctionne parfaitement.
Je vais donc trouver une alternative à cette fonction (on dirait que dans
le cas où je saisie une valeur, cette fonction tourne en boucle !!! et ne
débouche plus sur le mise en forme !
- Si je saisie la valeur manuellement (sans passer par le menu déroulant)
tout fonctionne bien, y compris avec la "Function" !
Il me semble qu'au bureau (comme chez toi, semble-t-il) tout fonctionne
parfaitement. Je pense que le pb réside dans ma présente version d'Excel.
Quoiqu'il en soit je te remercie bcp pour ton aide, car en dehors de ce pb,
j'ai appris pas mal de chose sur ce type de mise en forme que je pourrais
largement réutiliser. Dans le cas présent, se passer de la référence du nom
de l'onglet n'est pas bien grave.
Merci encore pour ta patience,
JP
Re...
Je n'arrive pas à reproduire ton problème
La plage [c1:k2] n'est pas sélectionnée
Il n'y a aucune sélection dans le code proposé
Sinon essaie comme ceci
'------------
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("$C$8:$K$40")) Is Nothing Then
Mise_En_Forme_JJ
End If
End Sub
'--------------
Sub Mise_En_Forme_JJ()
Application.ScreenUpdating = False
[c3:k4] = [c1:k2].Value
With Range("c3:k4").Font
.Name = "Verdana"
.FontStyle = "Gras"
.Size = 10
.ColorIndex = 15
End With
With Range("c3:k3").Characters(Start:=7, Length:=3).Font
.ColorIndex = 10
End With
With Range("c4:k4").Characters(Start:=7, Length:=3).Font
.ColorIndex = 3
End With
End Sub
'------------------------------
http://www.cijoint.fr/cjlink.php?file=cj200901/cijPF1vejW.xls
--
Bon rétablissement
JJ
"j-pascal" <messages@venir.com> a écrit dans le message de news:
mn.14fc7d91fc188e36.81386@venir.com...
Bonsoir Jacky,
Merci pour ton aide précieuse.
Il y a un truc que je ne m'explique pas. J'ai essayé ton classeur au
bureau ; qq secondes m'ont suffit pour m'apercevoir que tout fonctionnait
parfaitement.
Ce soir je fais un essai à la maison et ça ne fonctionne plus !
J'ai déroulé le code pas à pas :
1 - Si je supprime une valeur, tout est ok
2 - Si j'ajoute une valeur (avec le menu déroulant), les deux dernières
lignes du bout de code suivant ne s'exécutent pas :
'---------
Sub "
Dim ad As String
ad = ActiveCell.Address
Application.ScreenUpdating = False
[c1:k2].Copy
[c3].PasteSpecial Paste:=xlPasteValues
'---------
La plage [c1:k2] n'est pas sélectionnée !! (pourtant aucun msg de
débogage)
A part le fait d'être malade et d'avoir dormi 30 minutes la nuit dernière
(et donc de n'avoir peut-être pas les yeux en face des trous), je n'y
comprends rien !!
La "Private Sub Worksheet_Change(ByVal Target As Range)" détecte bien la
suppression ou l'ajout de données et la proc. "Mise_En_Forme_JJ(col)" se
lance bien dans les deux cas !!
Dans le cas qui ne fonctionne pas, mon curseur vient se placer chaque
fois sur la cellule "c3".
Je viens de remarquer que tout fonctionne bien si je saisie la valeur au
clavier + enter (sans passer par le menu déroulant).
Serait-ce une histoire de DoEvents ?
J'espère à bientôt,
JP
Re...
Celui-ci devrait mieux convenir
http://www.cijoint.fr/cjlink.php?file=cj200901/cijgDKGUOu.xls
Re...
Bizarre ton problème
Teste ceci
Efface c3:k4
Et entre une donnée dans une cellule (plage c8:k40) par la liste de
validation
c3:k4 doit se mettre à jour
--
Salutations
JJ
"j-pascal" a écrit dans le message de news:Merci Jacky pour ta persévérance !
Ton dernier classeur fonctionne (chez moi !) dès lors qu'on supprime une
valeur ; par contre la sélection des dites valeurs actualise les formules
des lignes 1 et 2 mais pas la recopie sur les lignes 3 et 4.
Si, après avoir voulu entrer des valeurs (donc non actualisées), j'en
supprime une, alors tout s'actualise d'un coup (y compris donc, les valeurs
saisies !).
Observations :
- Si je shunte "Function SheetName() As Date" tout fonctionne parfaitement.
Je vais donc trouver une alternative à cette fonction (on dirait que dans
le cas où je saisie une valeur, cette fonction tourne en boucle !!! et ne
débouche plus sur le mise en forme !
- Si je saisie la valeur manuellement (sans passer par le menu déroulant)
tout fonctionne bien, y compris avec la "Function" !
Il me semble qu'au bureau (comme chez toi, semble-t-il) tout fonctionne
parfaitement. Je pense que le pb réside dans ma présente version d'Excel.
Quoiqu'il en soit je te remercie bcp pour ton aide, car en dehors de ce pb,
j'ai appris pas mal de chose sur ce type de mise en forme que je pourrais
largement réutiliser. Dans le cas présent, se passer de la référence du nom
de l'onglet n'est pas bien grave.
Merci encore pour ta patience,
JPRe...
Je n'arrive pas à reproduire ton problèmeLa plage [c1:k2] n'est pas sélectionnée
Il n'y a aucune sélection dans le code proposé
Sinon essaie comme ceci
'------------
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("$C$8:$K$40")) Is Nothing Then
Mise_En_Forme_JJ
End If
End Sub
'--------------
Sub Mise_En_Forme_JJ()
Application.ScreenUpdating = False
[c3:k4] = [c1:k2].Value
With Range("c3:k4").Font
.Name = "Verdana"
.FontStyle = "Gras"
.Size = 10
.ColorIndex = 15
End With
With Range("c3:k3").Characters(Start:=7, Length:=3).Font
.ColorIndex = 10
End With
With Range("c4:k4").Characters(Start:=7, Length:=3).Font
.ColorIndex = 3
End With
End Sub
'------------------------------
http://www.cijoint.fr/cjlink.php?file=cj200901/cijPF1vejW.xls
--
Bon rétablissement
JJ
"j-pascal" a écrit dans le message de news:Bonsoir Jacky,
Merci pour ton aide précieuse.
Il y a un truc que je ne m'explique pas. J'ai essayé ton classeur au
bureau ; qq secondes m'ont suffit pour m'apercevoir que tout fonctionnait
parfaitement.
Ce soir je fais un essai à la maison et ça ne fonctionne plus !
J'ai déroulé le code pas à pas :
1 - Si je supprime une valeur, tout est ok
2 - Si j'ajoute une valeur (avec le menu déroulant), les deux dernières
lignes du bout de code suivant ne s'exécutent pas :
'---------
Sub "
Dim ad As String
ad = ActiveCell.Address
Application.ScreenUpdating = False
[c1:k2].Copy
[c3].PasteSpecial Paste:=xlPasteValues
'---------
La plage [c1:k2] n'est pas sélectionnée !! (pourtant aucun msg de
débogage)
A part le fait d'être malade et d'avoir dormi 30 minutes la nuit dernière
(et donc de n'avoir peut-être pas les yeux en face des trous), je n'y
comprends rien !!
La "Private Sub Worksheet_Change(ByVal Target As Range)" détecte bien la
suppression ou l'ajout de données et la proc. "Mise_En_Forme_JJ(col)" se
lance bien dans les deux cas !!
Dans le cas qui ne fonctionne pas, mon curseur vient se placer chaque
fois sur la cellule "c3".
Je viens de remarquer que tout fonctionne bien si je saisie la valeur au
clavier + enter (sans passer par le menu déroulant).
Serait-ce une histoire de DoEvents ?
J'espère à bientôt,
JPRe...
Celui-ci devrait mieux convenir
http://www.cijoint.fr/cjlink.php?file=cj200901/cijgDKGUOu.xls