macro pour enlever les 0 de c14 à af14

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 !

malcy45

XLDnaute Occasionnel
bonjour le forum,
j'ai contourné un plantage de fichiers en saisissant manuellement des nombres a la place des zéro mais sauriez vous ajouter une ligne dans la macro ci dessous pour modifier les cellules contenant un zéro de c14 à af14 dans le premier tableau ou sinon apres l'execution de la macro entre c1 et af1 dans le deuxieme.
Range("B15:B21").Select
Selection.Copy
Range("B2").Select
ActiveSheet.Paste
Range("C14:AF21").Select
Application.CutCopyMode = False
Selection.Copy
Range("C1").Select
ActiveSheet.Paste
Je dois préciser que le tableau du bas est rempli par une macro alors si un roi de la macro peut me faire deux macros en une, je prends.

J'ai essayé avec une formule style =si(c1=0;1;c1) mais je tombe sur les references circulaires et la prrroouuutt moi pas comprendre comment faire
merci d avance
Amities
Rémi
ci joint fichier
 

Pièces jointes

Re : macro pour enlever les 0 de c14 à af14

bonjour pierre jean,

merci pour l'envoi j'ai bien vu la ligne (et compris en plus !!!) For Each cel In Range je saurai la ressortir a un autre moment.

Comme je disais sur le post des 4000 d hervé, c'est que du tout bon ce forum et ses habitants


Je viens d'essayer et je retrouve la meme erreur certainement du a la presence de valeur identique entre c14 et af14 !! caca boudin !!!
alors peut on automatiser ce que je faisais precedement c'est a dire recopier les valeurs placées au dessus de la ligne dans les cases avec des zeros
si cellule vide prendre cellule ligne au dessus mais moi sais pas faire par langage de la machine
a plus
rémi
 
Dernière édition:
Re : macro pour enlever les 0 de c14 à af14

re tout le monde,
j essaie de m en sortir par moi meme mais bon mes limites sont vites atteintes
je veux juste que les cellules vides soient remplacées par un chiffre différent de zéro et jamais répétés deux fois.
La solution de pierre jean est bonne mais me genere des erreurs et je pense que c'est du a la repetition des nombres.


For Each Cel In Range("C14:AF14")
If Cel.Value = 0 Then Cel.Value = ""
Next Cel
et j ai essaye avec un for i= 1 to 30 et puis i=i+1 next i
mais ca n'a rien donné de bon ; je n'ai pas su ou le placer finalement
alors si vous pouvez m'aider merci
amities
remi
 
Re : macro pour enlever les 0 de c14 à af14

Bonsoir malcy45, pierrejean

Regarde si ca répond à ta question ( si j'ai bien compris ):

Sub derniertableau()

Dim cpt As Integer
Dim cel As Range
cpt = 0
For Each cel In Range("C14:AF21")
If cel.Value = 0 Then
cpt = cpt + 1
cel.Value = cpt
End If
Next cel
Range("B15:B21").Copy Range("B2")
Range("C14:AF21").Copy Range("C1")

End Sub

La macro te mets un chiffre de 1 à x suivant le nombre de cellules vides de la plage (C14:AF21) et copie les deux plages ( j'ai modifié un peu le code ).

Bonne soirée

P.O

Edit : la plage modifiée : For Each cel In Range("C14:AF21"), j'avais laissé ("C1:AF21")
 
Dernière édition:
Re : macro pour enlever les 0 de c14 à af14

bonsoir bqtr,

merci pour l'envoi,
ce n'est pas tout a fait mon souhait mais je m'explique souvent tres mal ; j'ai compris comment faire fonctionne le compteur donc j'ai adapté ta macro et ca donne ca maintenant :
Sub derniertableau()
'
' derniertableau Macro
' Macro enregistrée le 17/10/2006 par
'

'
Range("B15:B21").Select
Selection.Copy
Range("B2").Select
ActiveSheet.Paste
Dim cpt As Integer
Dim cel As Range
cpt = 0
For Each cel In Range("C14:AF14")
If cel.Value = 0 Then
cpt = cpt + 1
cel.Value = cpt
End If
Next cel
Range("C14:AF21").Select
Application.CutCopyMode = False
Selection.Copy
Range("C1").Select
ActiveSheet.Paste


End Sub
car je voulais juste changer les chiffres en bas et apres cela recopier le tableau dans la partie haute de la feuille donc ca me va tres bien merci pour la procedure et passe une bonne soirée
Amicalement
Rémi
 
Re : macro pour enlever les 0 de c14 à af14

Re,

Effectivement, j'avais mis une mauvaise plage dans la boucle, c'est pour ca que j'ai édité mon message pour t'avertir. Mais t'as été trop rapide.

Par contre, tes opérations de copie et collage tu peux les résumer avec les
deux lignes de codes que j'ai mis.

A+

P.o
 
Re : macro pour enlever les 0 de c14 à af14

re,
merci pour le complement d info je vais le modifier de suite
et je suis tres content car j'avais deux macro que j'ai refait en une et ca tourne mieux. Sachant que les personnes qui vont utiliser le fichier ne sont pas férus d informatique, ca me va du tonnerre..
Merci a toi et a pierre jean

ps : pierrejean j'attend ta reponse pour voir le contenu
Amicalement
Rémi
 
- 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

Discussions similaires

S
Réponses
5
Affichages
2 K
syl20du62
S
M
Réponses
2
Affichages
1 K
Retour