ClearContents ne fonctionne pas

jim7963

XLDnaute Junior
Bonjour à tous,

je fais de nouveau appelle à vous car j'ai un bout de code qui commence à me faire criser.
J'ai écris:

Code:
Dim DerColonne As Long
    DerColonne = Rows(12).Find("*", , , , xlByColumns, xlPrevious).Column
    
I = 2
    For I = 2 To 13
    For M = (DerColonne - 2) To 6 Step -5
            Sheets(I).Range(M & "12:" & M & "18").ClearContents
            Sheets(I).Range(M & "20:" & M & "26").ClearContents
            Sheets(I).Range(M & "28:" & M & "34").ClearContents
            Sheets(I).Range(M & "36:" & M & "42").ClearContents
            Sheets(I).Range(M & "44:" & M & "50").ClearContents
            Sheets(I).Range(M & "52:" & M & "58").ClearContents
    Next
    Next

Le problème c'est que lorsque je lance ma macro il n'y a aucun message d'erreur, sauf que les cellules ne se vident pas. J'ai fais plusieurs essais mais je n'arrive pas à comprendre où se situe le problème.

Quelqu'un aurait-il une idée pour m'aider?

Merci par avance pour votre aide.
 

gilbert_RGI

XLDnaute Barbatruc
Re : ClearContents ne fonctionne pas

Bonjour

je suppose que le but de cette macro est d'effacer des plages
dans la lecture de votre code vous remplacez M par un entier dans ce cas ça ne peut pas fonctionner
M represente la colonne ! ! !
 

jim7963

XLDnaute Junior
Re : ClearContents ne fonctionne pas

Bonjour Gilbert,

effectivement vous avez raison.
Je n'avais pas pensé à la variable qui était un entier. Mais même en remplaçant par une variante ça ne fonctionne toujours pas.

Comme je débute, je ne serais pas contre un conseil pour savoir comment je dois corriger ce code pour qu'il fonctionne.
 

jim7963

XLDnaute Junior
Re : ClearContents ne fonctionne pas

Excellent, c'est exactement ce que je cherchais, merci beaucoup Pierrejean.

Merci également Gilbert, cette remarque m'a mis sur la piste pour utiliser la syntaxe avec les Cells. J'ai commencé à tester avant de voir le message de Pierrejean, mais ma macro buggait et s'arrêtait à la première feuille. Il me manquait effectivement le .Address.

Juste une petite question pour m'aider à progresser, à quoi sert exactement le: .Address ?
 

pierrejean

XLDnaute Barbatruc
Re : ClearContents ne fonctionne pas

Re

un petit tuyau:
Dans Visual Basic editor
cliquer sur Address et appuyer sur F1
Le debut:
Range.Address, propriété

Cette propriété renvoie une valeur de type String qui représente la référence de la plage dans le langage de la macro.
 

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
312 215
Messages
2 086 330
Membres
103 186
dernier inscrit
Eliyass