Macro selection et suppression

Bonjour,

J'ai un tableau redondant sur lequel je dois ajouter un bouton qui sélectionne certaines plages, supprime et revient en C3

Alors j'ai utilisé l'enregistrement de macro (5 fois) mais ça bug, un problème d'union. Je dois avoir trop de données. Aussi j'ai essayé de faire ma macro toute seule et c'est pas mieux... Pourtant c'était bien fastidieux de retrouver toute mes plages....)

Une macro avec décaler aurait été plus simple mais je ne sais utiliser que la formule et pas la macro.

Qu'est ce que je fais mal à votre avis?

Un grand Merci par avance

Sub RAZ()

'

' RAZ Macro

'

'

Range("B15:N21,P15:P22,B29:N35,P29:P36,B43:N49,P43:P50,B57:N63,P57:P64,B71:N77,P71:P78,B85:N91,P85:P92,B99:N105,P99:P106,B113:N119,P113:P120,B127:N133,P127:P134,B141:N147,P141:P148,B155:N161,P155:P162,B169:N175,P169:P176,B183:N189,P183:P190,B197:N203,P197:P204,B211:N217,P211:P218,B225:N231,P225:P232,B239:N245,P239:P246,B253:N259,P253:P260,B267:N273,P267:P274,B281:N287,P281:P288,B295:N301,P295:P302,B309:N315,P309:P316,B323:N329,P323:P330,B337:N343,P337:P344,B351:N357,P351:P358,B365:M371,N365:N371,P365:P372,B379:N385,P379:P386,B393:N399,P393:P400,B407:N413,P407:P414,B421:N427,P421:P428,B435:N441,P435:P442,P449:P456,B463:N469,P463:P470,B477:N483,P477:P484,B491:N497,P491:P498,B505:N511,P505:P512,B519:N525,P519:P526,B533:N539,P533:P540,B547:N553,P547:P554,B561:N567,P561:P568,B575:N581,P575:P582,B589:N595,P589:P596,B603:N609,P603:P610,B617:M623,N617:N623,B631:N637,P631:P638,B645:N654,P645:P652,B659:N665,P659:P666,B673:N679,P673:P680,B687:N693,P687:P694,B701:N707,P701:P708,B715:N721,P715:P722,B729:N735,P729:P736,B743:N749,P743:P750 ").Select"

Selection.ClearContents

Range("C3").Select

End Sub

capture

Bonjour,

il y a un pas de 6 et un pas de 7 sur la majorité ,

tu pourrais faire une boucle.

aussi il n'est pas nécessaire de sélectionner une cellule pour effacer son contenu.

par exemple

Range("A1:D4").ClearContents

Bonjour i20100,

Je pense que le problème c'est que j'ai trop de plages donc à un moment je le perd....y compris avec l'enregistrement de macro.

Qu'entends tu par faire une boucle?

Genre je débute en B15 et j'efface jusqu'en N21 et ensuite c'est toute les 7 lignes vers le bas+

P15:P22 (qui est une cellule fusionnée) et ensuite c'est toute les 6 lignes vers le bas comme avec la formule décaler?

DECALER('$B$15;(LIGNES()-1)*14;;7;13)

Merci

re,

Qu'entends tu par faire une boucle?

tu mets tout les adresse dans une feuille, par exemple l'onglet MesRange en colonne A

Sub EffacePlage()
For i = 1 To Sheets("MesRange").Cells(Rows.Count, 1).End(xlUp).Row
    addr = Sheets("MesRange").Cells(i, 1)
    Sheets("Mon tableau").Range(addr).ClearContents
Next i
End Sub

Merci.

Quelque chose doit m'échapper car j'ai crée un onglet intitulé Mesrange et en A1 j'ai les plages comme indiqué.

J'ai affecté à mon bouton de Montableau la macro suivante:

Sub EffacePlage()

For i = 1 To Sheets("MesRange").Cells(Rows.Count, 1).End(xlUp).Row

addr = Sheets("MesRange").Cells(i, 1)

Sheets("Montableau").Range(addr).ClearContents

Next i

End Sub

J'ai erreur d'execution 9 L'indice n'appartient pas à la sélection. Je fais donc quelque chose de pas bien encore....

Ah l'erreur vient de la cellule fusionnée. ça m'indique que "cette action ne peut pas être appliquée à une cellule fusionnée"

Effectivement ma case P est fusionnée sur plusieurs lignes.

re,

au lieu d'effacer le contenu tu pourrais mettre un chaîne vide,

Sub EffacePlage()
For i = 1 To Sheets("MesRange").Cells(Rows.Count, 1).End(xlUp).Row
addr = Sheets("MesRange").Cells(i, 1)
Sheets("Montableau").Range(addr) = ""
Next i
End Sub

i20100, ça fonctionne!!!!

Un grand merci..... Trop fort

Rechercher des sujets similaires à "macro selection suppression"