Bonjour à tous et toutes
Dans un classeur comportant une quinzaine de feuilles, je devrais pouvoir
effacer le contenu de 6 feuilles; malheureusement pour moi avec des entêtes
fixes différentes et nombre de lignes différents.
J'ai fait un essai sur un classeur de 3 feuilles.
Sub efface()
Application.ScreenUpdating = False
If MsgBox("Etes-vous certain d'effacer...?", vbYesNo) = vbYes Then
Sheets("A").Select
Range("A7").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
Selection.ClearContents
Sheets("B").Select
Range("A3").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
Selection.ClearContents
Sheets("C").Select
Range("A2").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
Selection.ClearContents
End If
Application.ScreenUpdating = True
End Sub
N'y aurait'il pas moyen de simplifier cet exemple de procédure.
--
Merci d'avance pour vos conseils.
Cordialement
Christian
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Daniel
Bonjour. On peut, peut-être discriminer les entêtes par leur police, leur couleur, leur encadrement ? Cordialement. Daniel "Christian" a écrit dans le message de news:
Bonjour à tous et toutes Dans un classeur comportant une quinzaine de feuilles, je devrais pouvoir effacer le contenu de 6 feuilles; malheureusement pour moi avec des entêtes fixes différentes et nombre de lignes différents. J'ai fait un essai sur un classeur de 3 feuilles.
Sub efface() Application.ScreenUpdating = False If MsgBox("Etes-vous certain d'effacer...?", vbYesNo) = vbYes Then Sheets("A").Select Range("A7").Select Range(Selection, Selection.End(xlToRight)).Select Range(Selection, Selection.End(xlDown)).Select Selection.ClearContents Sheets("B").Select Range("A3").Select Range(Selection, Selection.End(xlToRight)).Select Range(Selection, Selection.End(xlDown)).Select Selection.ClearContents Sheets("C").Select Range("A2").Select Range(Selection, Selection.End(xlToRight)).Select Range(Selection, Selection.End(xlDown)).Select Selection.ClearContents End If Application.ScreenUpdating = True End Sub N'y aurait'il pas moyen de simplifier cet exemple de procédure.
-- Merci d'avance pour vos conseils. Cordialement Christian
Bonjour.
On peut, peut-être discriminer les entêtes par leur police, leur couleur,
leur encadrement ?
Cordialement.
Daniel
"Christian" <Christian@discussions.microsoft.com> a écrit dans le message de
news: C5175827-4FEF-43AA-BCD6-C22611211C68@microsoft.com...
Bonjour à tous et toutes
Dans un classeur comportant une quinzaine de feuilles, je devrais pouvoir
effacer le contenu de 6 feuilles; malheureusement pour moi avec des
entêtes
fixes différentes et nombre de lignes différents.
J'ai fait un essai sur un classeur de 3 feuilles.
Sub efface()
Application.ScreenUpdating = False
If MsgBox("Etes-vous certain d'effacer...?", vbYesNo) = vbYes Then
Sheets("A").Select
Range("A7").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
Selection.ClearContents
Sheets("B").Select
Range("A3").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
Selection.ClearContents
Sheets("C").Select
Range("A2").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
Selection.ClearContents
End If
Application.ScreenUpdating = True
End Sub
N'y aurait'il pas moyen de simplifier cet exemple de procédure.
--
Merci d'avance pour vos conseils.
Cordialement
Christian
Bonjour. On peut, peut-être discriminer les entêtes par leur police, leur couleur, leur encadrement ? Cordialement. Daniel "Christian" a écrit dans le message de news:
Bonjour à tous et toutes Dans un classeur comportant une quinzaine de feuilles, je devrais pouvoir effacer le contenu de 6 feuilles; malheureusement pour moi avec des entêtes fixes différentes et nombre de lignes différents. J'ai fait un essai sur un classeur de 3 feuilles.
Sub efface() Application.ScreenUpdating = False If MsgBox("Etes-vous certain d'effacer...?", vbYesNo) = vbYes Then Sheets("A").Select Range("A7").Select Range(Selection, Selection.End(xlToRight)).Select Range(Selection, Selection.End(xlDown)).Select Selection.ClearContents Sheets("B").Select Range("A3").Select Range(Selection, Selection.End(xlToRight)).Select Range(Selection, Selection.End(xlDown)).Select Selection.ClearContents Sheets("C").Select Range("A2").Select Range(Selection, Selection.End(xlToRight)).Select Range(Selection, Selection.End(xlDown)).Select Selection.ClearContents End If Application.ScreenUpdating = True End Sub N'y aurait'il pas moyen de simplifier cet exemple de procédure.
-- Merci d'avance pour vos conseils. Cordialement Christian
Christian
Bonjour Daniel Que veux-tu dire par discriminer les entêtes. S'agit-il d'une procédure particulière? -- Christian
Bonjour Daniel
Que veux-tu dire par discriminer les entêtes.
S'agit-il d'une procédure particulière?
--
Christian
Bonjour Daniel Que veux-tu dire par discriminer les entêtes. S'agit-il d'une procédure particulière? -- Christian
Daniel
Non, je veux dire reconnaître qu'il s'agit d'un entête, pas un texte à effacer. Suppose que tes entêtes soient en gras, on prend la première cellule de la colonne A qui n'est pas en gras comme début de la plage à effacer. Si tes entêtes sont encadrés, la première cellule de la colonne A en dessous la cellule qui a une bordure en bas, etc. Daniel "Christian" a écrit dans le message de news:
Bonjour Daniel Que veux-tu dire par discriminer les entêtes. S'agit-il d'une procédure particulière? -- Christian
Non, je veux dire reconnaître qu'il s'agit d'un entête, pas un texte à
effacer. Suppose que tes entêtes soient en gras, on prend la première
cellule de la colonne A qui n'est pas en gras comme début de la plage à
effacer. Si tes entêtes sont encadrés, la première cellule de la colonne A
en dessous la cellule qui a une bordure en bas, etc.
Daniel
"Christian" <Christian@discussions.microsoft.com> a écrit dans le message de
news: 71B8A9D7-2F14-41A9-804F-88C81533135E@microsoft.com...
Bonjour Daniel
Que veux-tu dire par discriminer les entêtes.
S'agit-il d'une procédure particulière?
--
Christian
Non, je veux dire reconnaître qu'il s'agit d'un entête, pas un texte à effacer. Suppose que tes entêtes soient en gras, on prend la première cellule de la colonne A qui n'est pas en gras comme début de la plage à effacer. Si tes entêtes sont encadrés, la première cellule de la colonne A en dessous la cellule qui a une bordure en bas, etc. Daniel "Christian" a écrit dans le message de news:
Bonjour Daniel Que veux-tu dire par discriminer les entêtes. S'agit-il d'une procédure particulière? -- Christian
Christian
Rebonjour Daniel Merci pour ces éclaircissements. Entretemps, j'ai trouvé une simplification de la procédure. Sheets("A").Select Range("a7", [A7].End(xlToRight).End(xlDown)).Select Selection.ClearContents Si tu as d'autres conseils ou astuces, je suis toujours preneur. -- Cordialement Christian
Non, je veux dire reconnaître qu'il s'agit d'un entête, pas un texte à effacer. Suppose que tes entêtes soient en gras, on prend la première cellule de la colonne A qui n'est pas en gras comme début de la plage à effacer. Si tes entêtes sont encadrés, la première cellule de la colonne A en dessous la cellule qui a une bordure en bas, etc. Daniel "Christian" a écrit dans le message de news:
Bonjour Daniel Que veux-tu dire par discriminer les entêtes. S'agit-il d'une procédure particulière? -- Christian
Rebonjour Daniel
Merci pour ces éclaircissements.
Entretemps, j'ai trouvé une simplification de la procédure.
Sheets("A").Select
Range("a7", [A7].End(xlToRight).End(xlDown)).Select
Selection.ClearContents
Si tu as d'autres conseils ou astuces, je suis toujours preneur.
--
Cordialement
Christian
Non, je veux dire reconnaître qu'il s'agit d'un entête, pas un texte à
effacer. Suppose que tes entêtes soient en gras, on prend la première
cellule de la colonne A qui n'est pas en gras comme début de la plage à
effacer. Si tes entêtes sont encadrés, la première cellule de la colonne A
en dessous la cellule qui a une bordure en bas, etc.
Daniel
"Christian" <Christian@discussions.microsoft.com> a écrit dans le message de
news: 71B8A9D7-2F14-41A9-804F-88C81533135E@microsoft.com...
Bonjour Daniel
Que veux-tu dire par discriminer les entêtes.
S'agit-il d'une procédure particulière?
--
Christian
Rebonjour Daniel Merci pour ces éclaircissements. Entretemps, j'ai trouvé une simplification de la procédure. Sheets("A").Select Range("a7", [A7].End(xlToRight).End(xlDown)).Select Selection.ClearContents Si tu as d'autres conseils ou astuces, je suis toujours preneur. -- Cordialement Christian
Non, je veux dire reconnaître qu'il s'agit d'un entête, pas un texte à effacer. Suppose que tes entêtes soient en gras, on prend la première cellule de la colonne A qui n'est pas en gras comme début de la plage à effacer. Si tes entêtes sont encadrés, la première cellule de la colonne A en dessous la cellule qui a une bordure en bas, etc. Daniel "Christian" a écrit dans le message de news:
Bonjour Daniel Que veux-tu dire par discriminer les entêtes. S'agit-il d'une procédure particulière? -- Christian
Gaston
Bonjour Christian, Pour s'amuser et sauver une ligne tu peux mettre: Range("a7", [A7].End(xlToRight).End(xlDown)).ClearContents Bye Gaston "Christian" wrote:
Rebonjour Daniel Merci pour ces éclaircissements. Entretemps, j'ai trouvé une simplification de la procédure. Sheets("A").Select Range("a7", [A7].End(xlToRight).End(xlDown)).Select Selection.ClearContents Si tu as d'autres conseils ou astuces, je suis toujours preneur. -- Cordialement Christian
Non, je veux dire reconnaître qu'il s'agit d'un entête, pas un texte à effacer. Suppose que tes entêtes soient en gras, on prend la première cellule de la colonne A qui n'est pas en gras comme début de la plage à effacer. Si tes entêtes sont encadrés, la première cellule de la colonne A en dessous la cellule qui a une bordure en bas, etc. Daniel "Christian" a écrit dans le message de news:
Bonjour Daniel Que veux-tu dire par discriminer les entêtes. S'agit-il d'une procédure particulière? -- Christian
Bonjour Christian,
Pour s'amuser et sauver une ligne tu peux mettre:
Range("a7", [A7].End(xlToRight).End(xlDown)).ClearContents
Bye
Gaston
"Christian" wrote:
Rebonjour Daniel
Merci pour ces éclaircissements.
Entretemps, j'ai trouvé une simplification de la procédure.
Sheets("A").Select
Range("a7", [A7].End(xlToRight).End(xlDown)).Select
Selection.ClearContents
Si tu as d'autres conseils ou astuces, je suis toujours preneur.
--
Cordialement
Christian
Non, je veux dire reconnaître qu'il s'agit d'un entête, pas un texte à
effacer. Suppose que tes entêtes soient en gras, on prend la première
cellule de la colonne A qui n'est pas en gras comme début de la plage à
effacer. Si tes entêtes sont encadrés, la première cellule de la colonne A
en dessous la cellule qui a une bordure en bas, etc.
Daniel
"Christian" <Christian@discussions.microsoft.com> a écrit dans le message de
news: 71B8A9D7-2F14-41A9-804F-88C81533135E@microsoft.com...
Bonjour Daniel
Que veux-tu dire par discriminer les entêtes.
S'agit-il d'une procédure particulière?
--
Christian
Bonjour Christian, Pour s'amuser et sauver une ligne tu peux mettre: Range("a7", [A7].End(xlToRight).End(xlDown)).ClearContents Bye Gaston "Christian" wrote:
Rebonjour Daniel Merci pour ces éclaircissements. Entretemps, j'ai trouvé une simplification de la procédure. Sheets("A").Select Range("a7", [A7].End(xlToRight).End(xlDown)).Select Selection.ClearContents Si tu as d'autres conseils ou astuces, je suis toujours preneur. -- Cordialement Christian
Non, je veux dire reconnaître qu'il s'agit d'un entête, pas un texte à effacer. Suppose que tes entêtes soient en gras, on prend la première cellule de la colonne A qui n'est pas en gras comme début de la plage à effacer. Si tes entêtes sont encadrés, la première cellule de la colonne A en dessous la cellule qui a une bordure en bas, etc. Daniel "Christian" a écrit dans le message de news:
Bonjour Daniel Que veux-tu dire par discriminer les entêtes. S'agit-il d'une procédure particulière? -- Christian
Gaston
ReBonjour Christian Je pense que j'ai trouvé un peu mieux
Sub efface() 'Comme ça tu n'a pas besoin de sélectionner la feuille Range(Sheets("A").Range("A7"), Sheets("A").Range("A7").End(xlToRight).End(xlDown)).ClearContents Range(Sheets("B").Range("A3"), Sheets("B").Range("A3").End(xlToRight).End(xlDown)).ClearContents Range(Sheets("C").Range("A2"), Sheets("C").Range("A2").End(xlToRight).End(xlDown)).ClearContents 'Il y aurait une amélioration en nommant des noms pour sélectionner tes plages avec "Decaler" 'Ex: EffaceA Þcaler(A!$A$7;;;NBVAL(A!$A$7:$A$1000);NBVAL(A!$A$7:$AA$7)) 'Range("EffaceA").ClearContents "fonctionnerait" 'Comme ça si tu ajoutes des colonnes ou des lignes, ta plage sera toujours à jour End Sub Bye Gaston
"Gaston" wrote:
Bonjour Christian, Pour s'amuser et sauver une ligne tu peux mettre: Range("a7", [A7].End(xlToRight).End(xlDown)).ClearContents Bye Gaston "Christian" wrote:
Rebonjour Daniel Merci pour ces éclaircissements. Entretemps, j'ai trouvé une simplification de la procédure. Sheets("A").Select Range("a7", [A7].End(xlToRight).End(xlDown)).Select Selection.ClearContents Si tu as d'autres conseils ou astuces, je suis toujours preneur. -- Cordialement Christian
Non, je veux dire reconnaître qu'il s'agit d'un entête, pas un texte à effacer. Suppose que tes entêtes soient en gras, on prend la première cellule de la colonne A qui n'est pas en gras comme début de la plage à effacer. Si tes entêtes sont encadrés, la première cellule de la colonne A en dessous la cellule qui a une bordure en bas, etc. Daniel "Christian" a écrit dans le message de news:
Bonjour Daniel Que veux-tu dire par discriminer les entêtes. S'agit-il d'une procédure particulière? -- Christian
ReBonjour Christian
Je pense que j'ai trouvé un peu mieux
Sub efface()
'Comme ça tu n'a pas besoin de sélectionner la feuille
Range(Sheets("A").Range("A7"),
Sheets("A").Range("A7").End(xlToRight).End(xlDown)).ClearContents
Range(Sheets("B").Range("A3"),
Sheets("B").Range("A3").End(xlToRight).End(xlDown)).ClearContents
Range(Sheets("C").Range("A2"),
Sheets("C").Range("A2").End(xlToRight).End(xlDown)).ClearContents
'Il y aurait une amélioration en nommant des noms pour sélectionner tes
plages avec "Decaler"
'Ex: EffaceA Þcaler(A!$A$7;;;NBVAL(A!$A$7:$A$1000);NBVAL(A!$A$7:$AA$7))
'Range("EffaceA").ClearContents "fonctionnerait"
'Comme ça si tu ajoutes des colonnes ou des lignes, ta plage sera toujours à
jour
End Sub
Bye
Gaston
"Gaston" wrote:
Bonjour Christian,
Pour s'amuser et sauver une ligne tu peux mettre:
Range("a7", [A7].End(xlToRight).End(xlDown)).ClearContents
Bye
Gaston
"Christian" wrote:
Rebonjour Daniel
Merci pour ces éclaircissements.
Entretemps, j'ai trouvé une simplification de la procédure.
Sheets("A").Select
Range("a7", [A7].End(xlToRight).End(xlDown)).Select
Selection.ClearContents
Si tu as d'autres conseils ou astuces, je suis toujours preneur.
--
Cordialement
Christian
Non, je veux dire reconnaître qu'il s'agit d'un entête, pas un texte à
effacer. Suppose que tes entêtes soient en gras, on prend la première
cellule de la colonne A qui n'est pas en gras comme début de la plage à
effacer. Si tes entêtes sont encadrés, la première cellule de la colonne A
en dessous la cellule qui a une bordure en bas, etc.
Daniel
"Christian" <Christian@discussions.microsoft.com> a écrit dans le message de
news: 71B8A9D7-2F14-41A9-804F-88C81533135E@microsoft.com...
Bonjour Daniel
Que veux-tu dire par discriminer les entêtes.
S'agit-il d'une procédure particulière?
--
Christian
ReBonjour Christian Je pense que j'ai trouvé un peu mieux
Sub efface() 'Comme ça tu n'a pas besoin de sélectionner la feuille Range(Sheets("A").Range("A7"), Sheets("A").Range("A7").End(xlToRight).End(xlDown)).ClearContents Range(Sheets("B").Range("A3"), Sheets("B").Range("A3").End(xlToRight).End(xlDown)).ClearContents Range(Sheets("C").Range("A2"), Sheets("C").Range("A2").End(xlToRight).End(xlDown)).ClearContents 'Il y aurait une amélioration en nommant des noms pour sélectionner tes plages avec "Decaler" 'Ex: EffaceA Þcaler(A!$A$7;;;NBVAL(A!$A$7:$A$1000);NBVAL(A!$A$7:$AA$7)) 'Range("EffaceA").ClearContents "fonctionnerait" 'Comme ça si tu ajoutes des colonnes ou des lignes, ta plage sera toujours à jour End Sub Bye Gaston
"Gaston" wrote:
Bonjour Christian, Pour s'amuser et sauver une ligne tu peux mettre: Range("a7", [A7].End(xlToRight).End(xlDown)).ClearContents Bye Gaston "Christian" wrote:
Rebonjour Daniel Merci pour ces éclaircissements. Entretemps, j'ai trouvé une simplification de la procédure. Sheets("A").Select Range("a7", [A7].End(xlToRight).End(xlDown)).Select Selection.ClearContents Si tu as d'autres conseils ou astuces, je suis toujours preneur. -- Cordialement Christian
Non, je veux dire reconnaître qu'il s'agit d'un entête, pas un texte à effacer. Suppose que tes entêtes soient en gras, on prend la première cellule de la colonne A qui n'est pas en gras comme début de la plage à effacer. Si tes entêtes sont encadrés, la première cellule de la colonne A en dessous la cellule qui a une bordure en bas, etc. Daniel "Christian" a écrit dans le message de news:
Bonjour Daniel Que veux-tu dire par discriminer les entêtes. S'agit-il d'une procédure particulière? -- Christian
Christian
Bonjour Gaston -- Merci pour ces précieux conseils. Christian
ReBonjour Christian Je pense que j'ai trouvé un peu mieux
Sub efface() 'Comme ça tu n'a pas besoin de sélectionner la feuille Range(Sheets("A").Range("A7"), Sheets("A").Range("A7").End(xlToRight).End(xlDown)).ClearContents Range(Sheets("B").Range("A3"), Sheets("B").Range("A3").End(xlToRight).End(xlDown)).ClearContents Range(Sheets("C").Range("A2"), Sheets("C").Range("A2").End(xlToRight).End(xlDown)).ClearContents 'Il y aurait une amélioration en nommant des noms pour sélectionner tes plages avec "Decaler" 'Ex: EffaceA Þcaler(A!$A$7;;;NBVAL(A!$A$7:$A$1000);NBVAL(A!$A$7:$AA$7)) 'Range("EffaceA").ClearContents "fonctionnerait" 'Comme ça si tu ajoutes des colonnes ou des lignes, ta plage sera toujours à jour End Sub Bye Gaston
"Gaston" wrote:
Bonjour Christian, Pour s'amuser et sauver une ligne tu peux mettre: Range("a7", [A7].End(xlToRight).End(xlDown)).ClearContents Bye Gaston "Christian" wrote:
Rebonjour Daniel Merci pour ces éclaircissements. Entretemps, j'ai trouvé une simplification de la procédure. Sheets("A").Select Range("a7", [A7].End(xlToRight).End(xlDown)).Select Selection.ClearContents Si tu as d'autres conseils ou astuces, je suis toujours preneur. -- Cordialement Christian
Non, je veux dire reconnaître qu'il s'agit d'un entête, pas un texte à effacer. Suppose que tes entêtes soient en gras, on prend la première cellule de la colonne A qui n'est pas en gras comme début de la plage à effacer. Si tes entêtes sont encadrés, la première cellule de la colonne A en dessous la cellule qui a une bordure en bas, etc. Daniel "Christian" a écrit dans le message de news:
Bonjour Daniel Que veux-tu dire par discriminer les entêtes. S'agit-il d'une procédure particulière? -- Christian
Bonjour Gaston
--
Merci pour ces précieux conseils.
Christian
ReBonjour Christian
Je pense que j'ai trouvé un peu mieux
Sub efface()
'Comme ça tu n'a pas besoin de sélectionner la feuille
Range(Sheets("A").Range("A7"),
Sheets("A").Range("A7").End(xlToRight).End(xlDown)).ClearContents
Range(Sheets("B").Range("A3"),
Sheets("B").Range("A3").End(xlToRight).End(xlDown)).ClearContents
Range(Sheets("C").Range("A2"),
Sheets("C").Range("A2").End(xlToRight).End(xlDown)).ClearContents
'Il y aurait une amélioration en nommant des noms pour sélectionner tes
plages avec "Decaler"
'Ex: EffaceA Þcaler(A!$A$7;;;NBVAL(A!$A$7:$A$1000);NBVAL(A!$A$7:$AA$7))
'Range("EffaceA").ClearContents "fonctionnerait"
'Comme ça si tu ajoutes des colonnes ou des lignes, ta plage sera toujours à
jour
End Sub
Bye
Gaston
"Gaston" wrote:
Bonjour Christian,
Pour s'amuser et sauver une ligne tu peux mettre:
Range("a7", [A7].End(xlToRight).End(xlDown)).ClearContents
Bye
Gaston
"Christian" wrote:
Rebonjour Daniel
Merci pour ces éclaircissements.
Entretemps, j'ai trouvé une simplification de la procédure.
Sheets("A").Select
Range("a7", [A7].End(xlToRight).End(xlDown)).Select
Selection.ClearContents
Si tu as d'autres conseils ou astuces, je suis toujours preneur.
--
Cordialement
Christian
Non, je veux dire reconnaître qu'il s'agit d'un entête, pas un texte à
effacer. Suppose que tes entêtes soient en gras, on prend la première
cellule de la colonne A qui n'est pas en gras comme début de la plage à
effacer. Si tes entêtes sont encadrés, la première cellule de la colonne A
en dessous la cellule qui a une bordure en bas, etc.
Daniel
"Christian" <Christian@discussions.microsoft.com> a écrit dans le message de
news: 71B8A9D7-2F14-41A9-804F-88C81533135E@microsoft.com...
Bonjour Daniel
Que veux-tu dire par discriminer les entêtes.
S'agit-il d'une procédure particulière?
--
Christian
Bonjour Gaston -- Merci pour ces précieux conseils. Christian
ReBonjour Christian Je pense que j'ai trouvé un peu mieux
Sub efface() 'Comme ça tu n'a pas besoin de sélectionner la feuille Range(Sheets("A").Range("A7"), Sheets("A").Range("A7").End(xlToRight).End(xlDown)).ClearContents Range(Sheets("B").Range("A3"), Sheets("B").Range("A3").End(xlToRight).End(xlDown)).ClearContents Range(Sheets("C").Range("A2"), Sheets("C").Range("A2").End(xlToRight).End(xlDown)).ClearContents 'Il y aurait une amélioration en nommant des noms pour sélectionner tes plages avec "Decaler" 'Ex: EffaceA Þcaler(A!$A$7;;;NBVAL(A!$A$7:$A$1000);NBVAL(A!$A$7:$AA$7)) 'Range("EffaceA").ClearContents "fonctionnerait" 'Comme ça si tu ajoutes des colonnes ou des lignes, ta plage sera toujours à jour End Sub Bye Gaston
"Gaston" wrote:
Bonjour Christian, Pour s'amuser et sauver une ligne tu peux mettre: Range("a7", [A7].End(xlToRight).End(xlDown)).ClearContents Bye Gaston "Christian" wrote:
Rebonjour Daniel Merci pour ces éclaircissements. Entretemps, j'ai trouvé une simplification de la procédure. Sheets("A").Select Range("a7", [A7].End(xlToRight).End(xlDown)).Select Selection.ClearContents Si tu as d'autres conseils ou astuces, je suis toujours preneur. -- Cordialement Christian
Non, je veux dire reconnaître qu'il s'agit d'un entête, pas un texte à effacer. Suppose que tes entêtes soient en gras, on prend la première cellule de la colonne A qui n'est pas en gras comme début de la plage à effacer. Si tes entêtes sont encadrés, la première cellule de la colonne A en dessous la cellule qui a une bordure en bas, etc. Daniel "Christian" a écrit dans le message de news:
Bonjour Daniel Que veux-tu dire par discriminer les entêtes. S'agit-il d'une procédure particulière? -- Christian