J’utilise la macro suivante, développée par Stéphane il y a un an :
Application.EnableEvents = False
For lig = 95 To 482 Step 2
If Feuil2.Cells(lig, 1) = "" Then Exit For
Next
If lig > 482 Then MsgBox "complet": Application.EnableEvents =
True: Exit Sub
mycol = Array(0, 1, 9, 24, 39, 45, 51)
For k = 1 To 6
Feuil2.Cells(lig, mycol(k)) = Feuil1.Cells(Target.Row, mycol(k))
If Feuil1.Range("AF" & Target.Row) = "" Then Feuil1.Cells(Target.Row,
mycol(k)) = ""
Next
Target.Value = ""
Application.EnableEvents = True
End If
Si je comprends bien, Target.value = "" efface tout à la fin dans la feuille
active le contenu de la cellule active.
J’aurais besoin de remplacer cette « fonction ».
Au lieu que le contenu seul de la cellule active s’efface, il faudrait que
les cellules 39, 45 et 51 (que l’on retrouve dans l’array) de la ligne active
s’effacent.
Par exemple, actuellement la macro s’exécute et en toute fin efface le
contenu de la cellule (95,39). Il faudrait que la macro se termine en
effaçant les cellules (95,39), (95,45) et (95,51).
J’utilise la macro suivante, développée par Stéphane il y a un an :
Application.EnableEvents = False For lig = 95 To 482 Step 2 If Feuil2.Cells(lig, 1) = "" Then Exit For Next If lig > 482 Then MsgBox "complet": Application.EnableEvents = True: Exit Sub mycol = Array(0, 1, 9, 24, 39, 45, 51) For k = 1 To 6 Feuil2.Cells(lig, mycol(k)) = Feuil1.Cells(Target.Row, mycol(k)) If Feuil1.Range("AF" & Target.Row) = "" Then Feuil1.Cells(Target.Row, mycol(k)) = "" Next Target.Value = "" Application.EnableEvents = True End If
Si je comprends bien, Target.value = "" efface tout à la fin dans la feuille active le contenu de la cellule active. J’aurais besoin de remplacer cette « fonction ». Au lieu que le contenu seul de la cellule active s’efface, il faudrait que les cellules 39, 45 et 51 (que l’on retrouve dans l’array) de la ligne active s’effacent. Par exemple, actuellement la macro s’exécute et en toute fin efface le contenu de la cellule (95,39). Il faudrait que la macro se termine en effaçant les cellules (95,39), (95,45) et (95,51).
J’utilise la macro suivante, développée par Stéphane il y a un an :
Application.EnableEvents = False
For lig = 95 To 482 Step 2
If Feuil2.Cells(lig, 1) = "" Then Exit For
Next
If lig > 482 Then MsgBox "complet": Application.EnableEvents =
True: Exit Sub
mycol = Array(0, 1, 9, 24, 39, 45, 51)
For k = 1 To 6
Feuil2.Cells(lig, mycol(k)) = Feuil1.Cells(Target.Row, mycol(k))
If Feuil1.Range("AF" & Target.Row) = "" Then Feuil1.Cells(Target.Row,
mycol(k)) = ""
Next
Target.Value = ""
Application.EnableEvents = True
End If
Si je comprends bien, Target.value = "" efface tout à la fin dans la feuille
active le contenu de la cellule active.
J’aurais besoin de remplacer cette « fonction ».
Au lieu que le contenu seul de la cellule active s’efface, il faudrait que
les cellules 39, 45 et 51 (que l’on retrouve dans l’array) de la ligne active
s’effacent.
Par exemple, actuellement la macro s’exécute et en toute fin efface le
contenu de la cellule (95,39). Il faudrait que la macro se termine en
effaçant les cellules (95,39), (95,45) et (95,51).
J’utilise la macro suivante, développée par Stéphane il y a un an :
Application.EnableEvents = False For lig = 95 To 482 Step 2 If Feuil2.Cells(lig, 1) = "" Then Exit For Next If lig > 482 Then MsgBox "complet": Application.EnableEvents = True: Exit Sub mycol = Array(0, 1, 9, 24, 39, 45, 51) For k = 1 To 6 Feuil2.Cells(lig, mycol(k)) = Feuil1.Cells(Target.Row, mycol(k)) If Feuil1.Range("AF" & Target.Row) = "" Then Feuil1.Cells(Target.Row, mycol(k)) = "" Next Target.Value = "" Application.EnableEvents = True End If
Si je comprends bien, Target.value = "" efface tout à la fin dans la feuille active le contenu de la cellule active. J’aurais besoin de remplacer cette « fonction ». Au lieu que le contenu seul de la cellule active s’efface, il faudrait que les cellules 39, 45 et 51 (que l’on retrouve dans l’array) de la ligne active s’effacent. Par exemple, actuellement la macro s’exécute et en toute fin efface le contenu de la cellule (95,39). Il faudrait que la macro se termine en effaçant les cellules (95,39), (95,45) et (95,51).
Je ne comprends pas ce qu’ils impliquent dans la macro.
D’avance, je vous remercie pour vos réponses et vous souhaite une bonne soirée.
Nicoh
Nicoh
Merci beaucoup Isabelle pour ta réponse,
J'ai un souci en ce sens que mes cellules sont fusionnées, donc la macro ne s'exécute pas. En défusionnant les cellules cela fonctionne parfaitement, mais j'ai besoin de garder la fusion des cellules.
J’utilise la macro suivante, développée par Stéphane il y a un an :
Application.EnableEvents = False For lig = 95 To 482 Step 2 If Feuil2.Cells(lig, 1) = "" Then Exit For Next If lig > 482 Then MsgBox "complet": Application.EnableEvents = True: Exit Sub mycol = Array(0, 1, 9, 24, 39, 45, 51) For k = 1 To 6 Feuil2.Cells(lig, mycol(k)) = Feuil1.Cells(Target.Row, mycol(k)) If Feuil1.Range("AF" & Target.Row) = "" Then Feuil1.Cells(Target.Row, mycol(k)) = "" Next Target.Value = "" Application.EnableEvents = True End If
Si je comprends bien, Target.value = "" efface tout à la fin dans la feuille active le contenu de la cellule active. J’aurais besoin de remplacer cette « fonction ». Au lieu que le contenu seul de la cellule active s’efface, il faudrait que les cellules 39, 45 et 51 (que l’on retrouve dans l’array) de la ligne active s’effacent. Par exemple, actuellement la macro s’exécute et en toute fin efface le contenu de la cellule (95,39). Il faudrait que la macro se termine en effaçant les cellules (95,39), (95,45) et (95,51).
Je ne comprends pas ce qu’ils impliquent dans la macro.
D’avance, je vous remercie pour vos réponses et vous souhaite une bonne soirée.
Nicoh
Merci beaucoup Isabelle pour ta réponse,
J'ai un souci en ce sens que mes cellules sont fusionnées, donc la macro ne
s'exécute pas.
En défusionnant les cellules cela fonctionne parfaitement, mais j'ai besoin
de garder la fusion des cellules.
J’utilise la macro suivante, développée par Stéphane il y a un an :
Application.EnableEvents = False
For lig = 95 To 482 Step 2
If Feuil2.Cells(lig, 1) = "" Then Exit For
Next
If lig > 482 Then MsgBox "complet": Application.EnableEvents =
True: Exit Sub
mycol = Array(0, 1, 9, 24, 39, 45, 51)
For k = 1 To 6
Feuil2.Cells(lig, mycol(k)) = Feuil1.Cells(Target.Row, mycol(k))
If Feuil1.Range("AF" & Target.Row) = "" Then Feuil1.Cells(Target.Row,
mycol(k)) = ""
Next
Target.Value = ""
Application.EnableEvents = True
End If
Si je comprends bien, Target.value = "" efface tout à la fin dans la feuille
active le contenu de la cellule active.
J’aurais besoin de remplacer cette « fonction ».
Au lieu que le contenu seul de la cellule active s’efface, il faudrait que
les cellules 39, 45 et 51 (que l’on retrouve dans l’array) de la ligne active
s’effacent.
Par exemple, actuellement la macro s’exécute et en toute fin efface le
contenu de la cellule (95,39). Il faudrait que la macro se termine en
effaçant les cellules (95,39), (95,45) et (95,51).
J'ai un souci en ce sens que mes cellules sont fusionnées, donc la macro ne s'exécute pas. En défusionnant les cellules cela fonctionne parfaitement, mais j'ai besoin de garder la fusion des cellules.
J’utilise la macro suivante, développée par Stéphane il y a un an :
Application.EnableEvents = False For lig = 95 To 482 Step 2 If Feuil2.Cells(lig, 1) = "" Then Exit For Next If lig > 482 Then MsgBox "complet": Application.EnableEvents = True: Exit Sub mycol = Array(0, 1, 9, 24, 39, 45, 51) For k = 1 To 6 Feuil2.Cells(lig, mycol(k)) = Feuil1.Cells(Target.Row, mycol(k)) If Feuil1.Range("AF" & Target.Row) = "" Then Feuil1.Cells(Target.Row, mycol(k)) = "" Next Target.Value = "" Application.EnableEvents = True End If
Si je comprends bien, Target.value = "" efface tout à la fin dans la feuille active le contenu de la cellule active. J’aurais besoin de remplacer cette « fonction ». Au lieu que le contenu seul de la cellule active s’efface, il faudrait que les cellules 39, 45 et 51 (que l’on retrouve dans l’array) de la ligne active s’effacent. Par exemple, actuellement la macro s’exécute et en toute fin efface le contenu de la cellule (95,39). Il faudrait que la macro se termine en effaçant les cellules (95,39), (95,45) et (95,51).
J'ai un souci en ce sens que mes cellules sont fusionnées, donc la macro ne s'exécute pas. En défusionnant les cellules cela fonctionne parfaitement, mais j'ai besoin de garder la fusion des cellules.
J'ai un souci en ce sens que mes cellules sont fusionnées, donc la macro ne
s'exécute pas.
En défusionnant les cellules cela fonctionne parfaitement, mais j'ai besoin
de garder la fusion des cellules.
J'ai un souci en ce sens que mes cellules sont fusionnées, donc la macro ne s'exécute pas. En défusionnant les cellules cela fonctionne parfaitement, mais j'ai besoin de garder la fusion des cellules.
Existe-t-il un remède ?
D'avance je te remercie.
Nicoh
Nicoh
J'ai honte de ne pas avoir trouver la solution tout seul, comme quoi j'ai encore énormément de progrès à faire.
Merci de ton aide, je vais pouvoir finaliser ma macro en adaptant le code aux nombreux cas qui la compose.
J'ai un souci en ce sens que mes cellules sont fusionnées, donc la macro ne s'exécute pas. En défusionnant les cellules cela fonctionne parfaitement, mais j'ai besoin de garder la fusion des cellules.
Existe-t-il un remède ?
D'avance je te remercie.
Nicoh
J'ai honte de ne pas avoir trouver la solution tout seul, comme quoi j'ai
encore énormément de progrès à faire.
Merci de ton aide, je vais pouvoir finaliser ma macro en adaptant le code
aux nombreux cas qui la compose.
J'ai un souci en ce sens que mes cellules sont fusionnées, donc la macro ne
s'exécute pas.
En défusionnant les cellules cela fonctionne parfaitement, mais j'ai besoin
de garder la fusion des cellules.
J'ai un souci en ce sens que mes cellules sont fusionnées, donc la macro ne s'exécute pas. En défusionnant les cellules cela fonctionne parfaitement, mais j'ai besoin de garder la fusion des cellules.
Existe-t-il un remède ?
D'avance je te remercie.
Nicoh
Philippe.R
Bonjour,
En défusionnant les cellules cela fonctionne parfaitement, mais j'ai besoin de garder la fusion des cellules.
Si d'aventure les cellules fusionnées sont horizontales, remplace la fusion par "centrer sur plusieurs colonnes" dans l'alignement horizontal au niveau de la mise en forme de cellule. Tu y gagneras en efficacité. -- Avec plaisir http://dj.joss.free.fr/trombine.htm Philippe.R Pour se connecter au forum : http://www.excelabo.net/mpfe/connexion.php News://news.microsoft.com/microsoft.public.fr.excel "Nicoh" a écrit dans le message de news:
Merci beaucoup Isabelle pour ta réponse,
J'ai un souci en ce sens que mes cellules sont fusionnées, donc la macro ne s'exécute pas. En défusionnant les cellules cela fonctionne parfaitement, mais j'ai besoin de garder la fusion des cellules.
J’utilise la macro suivante, développée par Stéphane il y a un an :
Application.EnableEvents = False For lig = 95 To 482 Step 2 If Feuil2.Cells(lig, 1) = "" Then Exit For Next If lig > 482 Then MsgBox "complet": Application.EnableEvents >> > True: Exit Sub mycol = Array(0, 1, 9, 24, 39, 45, 51) For k = 1 To 6 Feuil2.Cells(lig, mycol(k)) = Feuil1.Cells(Target.Row, mycol(k)) If Feuil1.Range("AF" & Target.Row) = "" Then Feuil1.Cells(Target.Row, mycol(k)) = "" Next Target.Value = "" Application.EnableEvents = True End If
Si je comprends bien, Target.value = "" efface tout à la fin dans la feuille active le contenu de la cellule active. J’aurais besoin de remplacer cette « fonction ». Au lieu que le contenu seul de la cellule active s’efface, il faudrait que les cellules 39, 45 et 51 (que l’on retrouve dans l’array) de la ligne active s’effacent. Par exemple, actuellement la macro s’exécute et en toute fin efface le contenu de la cellule (95,39). Il faudrait que la macro se termine en effaçant les cellules (95,39), (95,45) et (95,51).
Je ne comprends pas ce qu’ils impliquent dans la macro.
D’avance, je vous remercie pour vos réponses et vous souhaite une bonne soirée.
Nicoh
Bonjour,
En défusionnant les cellules cela fonctionne parfaitement, mais j'ai
besoin
de garder la fusion des cellules.
Si d'aventure les cellules fusionnées sont horizontales, remplace la fusion
par "centrer sur plusieurs colonnes" dans l'alignement horizontal au niveau
de la mise en forme de cellule.
Tu y gagneras en efficacité.
--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"Nicoh" <Nicoh@discussions.microsoft.com> a écrit dans le message de
news:E9CA0B94-0D20-47C7-A5F1-B71FCEE8B4F2@microsoft.com...
Merci beaucoup Isabelle pour ta réponse,
J'ai un souci en ce sens que mes cellules sont fusionnées, donc la macro
ne
s'exécute pas.
En défusionnant les cellules cela fonctionne parfaitement, mais j'ai
besoin
de garder la fusion des cellules.
J’utilise la macro suivante, développée par Stéphane il y a un an :
Application.EnableEvents = False
For lig = 95 To 482 Step 2
If Feuil2.Cells(lig, 1) = "" Then Exit For
Next
If lig > 482 Then MsgBox "complet":
Application.EnableEvents >> > True: Exit Sub
mycol = Array(0, 1, 9, 24, 39, 45, 51)
For k = 1 To 6
Feuil2.Cells(lig, mycol(k)) = Feuil1.Cells(Target.Row,
mycol(k))
If Feuil1.Range("AF" & Target.Row) = "" Then Feuil1.Cells(Target.Row,
mycol(k)) = ""
Next
Target.Value = ""
Application.EnableEvents = True
End If
Si je comprends bien, Target.value = "" efface tout à la fin dans la
feuille
active le contenu de la cellule active.
J’aurais besoin de remplacer cette « fonction ».
Au lieu que le contenu seul de la cellule active s’efface, il faudrait
que
les cellules 39, 45 et 51 (que l’on retrouve dans l’array) de la ligne
active
s’effacent.
Par exemple, actuellement la macro s’exécute et en toute fin efface le
contenu de la cellule (95,39). Il faudrait que la macro se termine en
effaçant les cellules (95,39), (95,45) et (95,51).
En défusionnant les cellules cela fonctionne parfaitement, mais j'ai besoin de garder la fusion des cellules.
Si d'aventure les cellules fusionnées sont horizontales, remplace la fusion par "centrer sur plusieurs colonnes" dans l'alignement horizontal au niveau de la mise en forme de cellule. Tu y gagneras en efficacité. -- Avec plaisir http://dj.joss.free.fr/trombine.htm Philippe.R Pour se connecter au forum : http://www.excelabo.net/mpfe/connexion.php News://news.microsoft.com/microsoft.public.fr.excel "Nicoh" a écrit dans le message de news:
Merci beaucoup Isabelle pour ta réponse,
J'ai un souci en ce sens que mes cellules sont fusionnées, donc la macro ne s'exécute pas. En défusionnant les cellules cela fonctionne parfaitement, mais j'ai besoin de garder la fusion des cellules.
J’utilise la macro suivante, développée par Stéphane il y a un an :
Application.EnableEvents = False For lig = 95 To 482 Step 2 If Feuil2.Cells(lig, 1) = "" Then Exit For Next If lig > 482 Then MsgBox "complet": Application.EnableEvents >> > True: Exit Sub mycol = Array(0, 1, 9, 24, 39, 45, 51) For k = 1 To 6 Feuil2.Cells(lig, mycol(k)) = Feuil1.Cells(Target.Row, mycol(k)) If Feuil1.Range("AF" & Target.Row) = "" Then Feuil1.Cells(Target.Row, mycol(k)) = "" Next Target.Value = "" Application.EnableEvents = True End If
Si je comprends bien, Target.value = "" efface tout à la fin dans la feuille active le contenu de la cellule active. J’aurais besoin de remplacer cette « fonction ». Au lieu que le contenu seul de la cellule active s’efface, il faudrait que les cellules 39, 45 et 51 (que l’on retrouve dans l’array) de la ligne active s’effacent. Par exemple, actuellement la macro s’exécute et en toute fin efface le contenu de la cellule (95,39). Il faudrait que la macro se termine en effaçant les cellules (95,39), (95,45) et (95,51).