Effacer une ou plusieurs cellules par une macro

bonjour

j'ai une valeur qui varie de 0 a 80 en A1

je souhaiterai executer une macro

qui m'efface un bloc (b2:b10)

lorsque A1 est égale a 0

merci pour votre aide

amicalement

raymond

Bonjour

Code à placer dans la feuille concernée :

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Target, Range("A1")) Is Nothing Then
If Target.Value = 0 Then
Range("B2:B10") = ClearContents
End If
End If
End Sub

Amicalement

Nad

bonjour et merci pour ton aide

j'avoue etre vraiment debutant en vba

j'ai recopié '''''betement"""" la formule que tu me propose

ca m'affiche - objet requis

je te joins ma macro

Sub CADRAGE()

'

' CADRAGE Macro

' Macro enregistrée le 01/04/2009 par Particulier

'

With Sheets("CADRAGE")

.Activate

.Range("b7:d200").Clear

.Range("B3:D5").Copy

For i = 1 To Sheets("FORMATION").Range("F22") - 1

.Range("B3").Offset(i * 4, 0).PasteSpecial Paste:=xlPasteFormats

Next

If Not Application.Intersect(Target, Range("A1")) Is Nothing Then

If Target.Value = 0 Then

Range("B3") = Clear

End If

End If

End With

End Sub

j'ouvre une feuille cadrage

j'efface les cellules de B7 a B 200

sur cette meme feuille je copie le bloc ( B3 : D5 )

je vais chercher en F22 une valeur dans la feuil formation

qui determinera le nombre de copie du bloc ( B3 : D5 ) dans

la feuil cadrage

par contre dans la feuille cadrage en A1 J'ai cette variable de 0 a 80

qui lorsqu'elle est egale a 0

je souhaiterai que tous les blocs copies soient effaces

merci

j'en profite egalement pour te demander dans mon programme

j'ai des macros qui fonctionnent tres bien -

quand je pose des question sur une macro - pratiquement a chaque fois

la macro commence par DIM ...... est ce important et que peut t il m arriver

n'en ayant jamais mis

amicalement

raymond

Re

Ce serait plus facile si tu joignais ton fichier.

Je ne pense pas être apte à faire la macro que tu attends, mais nous avons des experts sur ce site qui se feront un plaisir de t'aider.

Amicalement

Nad

re bonjour

je ne peux pas joindre mon fichier il fait 550 ko

amicalement

raymond

Bonjour,

Nad t'a proposé une macro que tu as intégrée à une SUB.

Suis ses instructions et mets ce code dans la feuille concernée et non dans ta macro SUB sinon cela ne fonctionnera pas.

Amicalement

Dan

bonjour

vraiment désole

comme je vous en ai fait part je suis vraiment débutant

je connais quelques fonctions classiques

je sais utiliser une macro ( par le biais enregistrer une macro )

a part cela ???

tout ca pour te dire que je souhaiterai que tu m expliques

comment on met un code dans une feuille et ou

dans les cellules ?

desolé

amicalement

raymond

Re

Actuellement, tu as une macro dans un Module.

Dans la partie gauche de VBA, au dessus de ce module, tu as les noms de tes feuilles.

Tu fais un double click sur le nom de la feuille concernée et tu colles la macro que je t'ai donnée dans la partie droite.

Amicalement

Nad

re bonjour

j' ai copie le code comme tu me l' a expliqué dans VBA

j'ai vu effectivement

EURO TOOLS.XLA

VBA PROJECT

MODULE

Le nom de ma feuil cadrage etait dans VBA PROJECT j'ai fait un double clic

dessus et j'ai copier coller le code que tu m'a donné

mais rien ne se passe

dois je supprimer la macro ci dessous qui se trouve dans la feuille cadrage

Sub CADRAGE()

'

' CADRAGE Macro

' Macro enregistrée le 01/04/2009 par Particulier

'

With Sheets("CADRAGE")

.Activate

.Range("b7:d200").Clear

.Range("B3:D5").Copy

For i = 1 To Sheets("FORMATION").Range("F22") - 1

.Range("B3").Offset(i * 4, 0).PasteSpecial Paste:=xlPasteFormats

Next

End With

End Sub

la macro efface tout les blocs existant de B7 a D200

.Range("b7:d200").Clear

elle copie le bloc B3:D5

.Range("B3:D5").Copy

elle va chercher une valeur en F22 de la feuil!FORMATION

et copie le bloc B3:D5 autant de fois que (F22)

cette macro fonctionne bien

que dois je faire

amicalement

raymond

re

dan je viens de m'apercevoir en que

la macro et le code fonctionne correctement

comment puis je modifier le code

pour que ca ne me fasse pas un clear du contenu

mais que cela efface absolument tout

les valeurs - le contenu - le format

amicalement

raymond

re

dan je viens de m'apercevoir en que

la macro fonctionne

elle efface bien le contenu du bloc B3:D5

mais sans tenir compte de A1

quelque soit la valeur de A1 le contenu est effacé

mon souhait que cela ne soit effacé que lorsque A1 EST EGALE A 0

D'autre part comment puis je modifier le code

pour que ca ne me fasse pas un clear du contenu

mais que cela efface absolument tout

les valeurs - le contenu - le format

je te remercie vraiment de m'aider

j'ai 62 ans - j'ai le sentiment d'avoir attaquer quelque chose de complexe

mais j'apprends avec toi des tas de choses et je t 'en remercie encore

amicalement

raymond

As-tu bien mis dans la macro :

If Not Application.Intersect(Target, Range("A1")) Is Nothing Then
If Target.Value = 0 Then 

Nad

Rechercher des sujets similaires à "effacer macro"