Je dispose d'une macro que j'aimerais adapater pour automatiser la mise en forme d'un fichier.
Cette macro exécute les opération suivantes:
Lorsque dans la plage A1 à C500 il existe la valeur C33, supprime la cellule.
Ce que je voudrais faire:
A la place du supprimer, je souhaiterais copier le contenu de cette cellule sur la ligne précédente, dans une colonne définie (par ex la colonne 8 donc hors de la plage).
Voici la macro qui me servirait de base
Dim Cellule As Range
With Sheets("Feuil1")
For Each cel In Range("A1:C500")
If cel.Value Like "*C33*" Then
cel.Select
Selection.Delete
End If
Next cel
End With
End Sub
Je ne vois pas comment faire.Quelqu'un aurait il une idée?
La macro fonctionne correctement, à cette nuance près :
Tu veux recopier la cellule sur la ligne du dessus, ce qui n'est pas possible avec la cellule A1 (origine du plantage) puisque c'est la première ligne.
Si tu effaces cette cellule, ou si tu commences ta boucle à la ligne 2, tu verras que tu n'auras plus d'erreur. Si tu tiens absolument à commencer à la ligne 1, il faut alors revoir la logique du programme.