Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Erreur 1004 dans execution de macro

  • Initiateur de la discussion Initiateur de la discussion Cyr25
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

C

Cyr25

Guest
Bonjour à tous,
J'ai une macro qu'on m'avait fourni qui permet de supprimer sur une feuille excel tout ce qui est en bleu barré et de passer en noir sans soulignement ce qui est en rouge souligné. Cela avait l'air de fonctionner mais sur le fichier joint j'ai une erreur d'éxecution 1004 et la macro s'arrète avant d'avoir fait toute la page. Je ne sais pas d'ou cela peut provenir. Please help me.

Merci
 

Pièces jointes

Re : Erreur 1004 dans execution de macro

Bonjour

L'erreur 1004 se produit lorsque la procédure essaie de modifier une cellule contenant un nombre supérieur à 9, (par exemple en ligne 35 colonne D).
Si tu places une apostrophe devant ce nombre alors plus de problème car la procédure le considère comme du texte : '49962
à plus
 
Re : Erreur 1004 dans execution de macro

Merci pour ta réponse Le Pierre, maintenant je sais d'ou viens le problème. Par contre n'y aurait-il pas une autre possibilité en modifiant la macro ou en déclarant autrement les variables car je ne suis pas le seul à modifier de tels fichiers et une partie des informations viennent directement d'une base de donnée ou je ne peux pas aller mettre des apostrophes.

Merci d'avance🙂
 
Re : Erreur 1004 dans execution de macro

Bonjour

Voici ton fichier modifié qui fonctionne sans erreur.
J'ai ajouté ce bout de code qui ajoute une apostrophe :
Code:
                        Else ' sinon on supprime juste le caractère
                            [COLOR="Magenta"]If (VarType(Ma_Cell.Value)) <> 8 Then Ma_Cell.Value = "'" & Ma_Cell.Value[/COLOR]
                            Ma_Cell.Characters(Start:=Compteur, Length:=1).Delete
                        End If
Je ne suis pas trop satisfaits de la solution mas ça fonctionne. Si quelqu'un a mieux ...
à plus
 

Pièces jointes

Re : Erreur 1004 dans execution de macro

Encore merci Le Pierre. C'est vrai que c'est pas une solution académique mais ca à le mérite de fonctionner. Je vais l'utiliser tant que personne n'aura trouver un autre code.

merci🙂
 
Re : Erreur 1004 dans execution de macro

bonjour

essais comme ceci:

à la place de > Ma_Cell.Characters(Start:=Compteur, Length:=1).Delete

tu mets:

V$ = Ma_Cell.Value: V$ = Mid(V$, Compteur): Ma_Cell.Value = Val(V$)

EDIT: important ! j'ai oublié ! bien sûr ceci sur des valeurs numériques !
tester avant comme ceci donc !!!!

If IsNumeric(Ma_Cell.Value) Then
V$ = Ma_Cell.Value: V$ = Mid(V$, Compteur): Ma_Cell.Value = Val(V$)
Else
Ma_Cell.Characters(Start:=Compteur, Length:=1).Delete
End If

tu me dis quoi !?
 
Dernière édition:
Re : Erreur 1004 dans execution de macro

Merci à toi Roland_M. J'ai fait le test et ca fonctionne bien à part pour 4 cellules ou après avoir supprimer le contenu de toute ces cellules ou tout est en bleu souligné, une valeur 0 apparait. Saurait tu me dires de quoi cela provient.
Encore merci à vous deux pour votre intéret.
PS je ne reprendrai le fil que demain matin car je dois partir.

A+
 

Pièces jointes

Re : Erreur 1004 dans execution de macro

re:

oui c'est du fait que l'on remet val(V$) et si c'est 0 évidemment tu as 0
mais si tu veux pas du 0 tu fais comme ceci :
(tu rajoute le petit test sur Val(V$)
If Val(V$)>0 then Ma_Cell.Value = Val(V$) else Ma_Cell.Value = ""

c'est à dire:
If IsNumeric(Ma_Cell.Value) Then
V$ = Ma_Cell.Value: V$ = Mid(V$, Compteur)
If Val(V$) > 0 Then Ma_Cell.Value = Val(V$) Else Ma_Cell.Value = ""
Else
Ma_Cell.Characters(Start:=Compteur, Length:=1).Delete
End If

EDIT: ci-joint ton fichier modifié !
 

Pièces jointes

Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
2
Affichages
646
Réponses
9
Affichages
2 K
Compte Supprimé 979
C
Réponses
8
Affichages
1 K
P
K
  • Question Question
Réponses
20
Affichages
3 K
Kapioss
K
K
  • Question Question
Réponses
2
Affichages
1 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…