Erreur d'exécution 1004

Bonjour à tous,

Je suis débutant en macro, et j'ai crée un macro pour le boulot. Le but étant de supprimer les données de plusieurs cellules d'un onglet (normalement rien de très compliqué). Cependant, elle affiche une erreur d’exécution 1004 "erreur définie par l'application ou par l'objet".

Je n'utilise pas de variable, je n'arrive pas à comprendre mon erreur, même avec l'aide débogage pas à pas détaillé.

L'erreur se situe sur le passage Range("H223:H224").ClearContents à Range("H227:H229").ClearContents

Peut-il s'agir du nombre de lignes trop important ?

Je pose le code ci-dessous.

Merci pour votre aide

Sub CleanCFS()

'Clean l'onglet CFS'

Dim sPass As String

sPass = InputBox("Veuillez saisir le mot de passe")

If sPass = "EDF18" Then

Sheets("3.CFS").Activate

'CLEAN R2 2018'

Range("H9").ClearContents

Range("H17").ClearContents

Range("H26:H27").ClearContents

Range("H36").ClearContents

Range("H47").ClearContents

Range("H50").ClearContents

Range("H58").ClearContents

Range("H63").ClearContents

Range("H67").ClearContents

Range("H75").ClearContents

Range("H82").ClearContents

Range("H85:H89").ClearContents

Range("H98").ClearContents

Range("H102").ClearContents

Range("H111").ClearContents

Range("H119").ClearContents

Range("H123").ClearContents

Range("H129:H131").ClearContents

Range("H134").ClearContents

Range("H137").ClearContents

Range("H143").ClearContents

Range("H147").ClearContents

Range("H150:H152").ClearContents

Range("H159:H160").ClearContents

Range("H163:H168").ClearContents

Range("H178:H180").ClearContents

Range("H183:H189").ClearContents

Range("H209").ClearContents

Range("H212:H214").ClearContents

Range("H219:H220").ClearContents

Range("H223:H224").ClearContents

Range("H227:H229").ClearContents

Range("H235").ClearContents

Range("H246").ClearContents

Range("H238:240").ClearContents

Range("H249:251").ClearContents

Range("H263").ClearContents

Range("H266:H268").ClearContents

Range("H275").ClearContents

Range("H280").ClearContents

Range("H282").ClearContents

Range("H285").ClearContents

Range("H289").ClearContents

Range("H296:H297").ClearContents

Range("H301").ClearContents

Range("H309").ClearContents

Range("H313").ClearContents

Range("H326").ClearContents

Range("H348").ClearContents

Range("H352").ClearContents

Range("H357").ClearContents

Range("H366").ClearContents

Range("H371:H373").ClearContents

Range("H424:H425").ClearContents

Range("H432").ClearContents

Range("H452").ClearContents

Range("H488:H490").ClearContents

Range("H500").ClearContents

Range("H504").ClearContents

Range("H506").ClearContents

Range("H508").ClearContents

Range("H516:H517").ClearContents

Range("H522").ClearContents

Range("H530").ClearContents

Range("H535").ClearContents

Range("H538").ClearContents

Range("H541").ClearContents

Range("H545").ClearContents

Range("H566:H568").ClearContents

Range("H577:H580").ClearContents

Range("H607").ClearContents

Range("H623:H624").ClearContents

Range("H644").ClearContents

Range("H662").ClearContents

Range("H673:H677").ClearContents

Range("H699").ClearContents

Range("H717").ClearContents

Bonjour berna15,

N'y aurait-il pas une erreur ici ?

Range("H238:240").ClearContents
Range("H249:251").ClearContents

Ne serait-ce pas plutôt

Range("H238:H240").ClearContents
Range("H249:H251").ClearContents

Cordialement,

Bonjour,

Dans ces lignes, il manque les lettres :

Range("H238:240").ClearContents
Range("H249:251").ClearContents

comme ça :

Range("H238:H240").ClearContents
Range("H249:H251").ClearContents

Effectivement c'est une erreur de débutant...

Merci pour votre réactivité

Bonne journée

Bonjour berna15, le forum,

je te propose d'écrire ainsi toute la dernière partie de ton code VBA :

'CLEAN R2 2018'
Dim Plg$
Plg = "H9,H17, H26:H27, H36,H47,H50,H58,H63,H67,H75,H82, H85:H89, H98,H102,H111,H119,H123, H129:H131," _
  & "H134,H137,H143,H147, H150:H152, H159:H160, H163:H168, H178:H180, H183:H189, H209, H212:H214," _
  & "H219:H220, H223:H224, H227:H229, H235,H246, H238:H240, H249:H251, H263, H266:H268, H275,H280,H282," _
  & "H285,H289, H296:H297, H301,H309,H313,H326,H348,H352,H357,H366, H371:H373, H424:H425, H432,H452," _
  & "H488:H490, H500,H504,H506,H508, H516:H517, H522,H530,H535,H538,H541,H545, H566:H568, H577:H580," _
  & "H607, H623:H624, H644,H662, H673:H677, H699,H717"
Range(Plg).ClearContents

merci de me dire si ça te convient.


sauf si tu as autre chose à demander, je te laisse passer le sujet en résolu : tu dois cliquer sur le bouton qui est près du bouton (dans le coin haut droit d'un message) ; toi seul peut le faire, car c'est toi qui a créé ce sujet ; tu sauras que tu as réussi quand tu verras un petit rond vert avec une coche, comme ceci :

sujet

dhany

Bonjour à toutes et tous,

désolé xorsankukai, j'ai répondu après que tu ai donné la bonne réponse

décidément, il me faut vraiment penser à cette touche F5 avant de épondre

Bonjour Theze,

désolé xorsankukai, j'ai répondu après que tu ai donné la bonne réponse

Aucun souci, , cela m'arrive fréquemment, je suis encore trop lent,

L'essentiel, c'est que notre camarade ai résolu son problème,

A dhany, j'aime beaucoup ta façon d'alléger le code ,

A bientot sur le forum,

Cordialement,

Rechercher des sujets similaires à "erreur execution 1004"