Erreur "1004" boucle "for each"

Résolu/Fermé
sterf900 Messages postés 3 Date d'inscription mardi 2 septembre 2014 Statut Membre Dernière intervention 7 septembre 2014 - 2 sept. 2014 à 18:24
sterf900 Messages postés 3 Date d'inscription mardi 2 septembre 2014 Statut Membre Dernière intervention 7 septembre 2014 - 7 sept. 2014 à 12:35
Bonjour,
je bute sur un code VBA qui me renvoie une erreur d'exécution "1004" sur la ligne N°5 (je ne sais pas si il y en a d'autres).
Le code:

Private Sub activ7xdessouscible_Click()
Application.ScreenUpdating = False
For Each Cell In Range("BA30:CN30")
If Cell.Value = "1" Then
Cell.Offset(1, 1).Value = 1
End If
Next
End Sub

le but de cette boucle est de tester la valeur des cellules ("BA30:CN30"). pour chaque cellule égale à 1, la cellule ce trouvant sur la meme colonne juste dessous (ex: si BA30=1 alors BA 31=1 est forcée à 1


compte tenue de mon niveau, l'aide excel n'a pas suffit. je m'en remet donc à votre savoir pour m'éclairer sur cette erreur.

merci par avance

2 réponses

gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 684
Modifié par gbinforme le 2/09/2014 à 22:19
Bonjour,

Si tu veux faire ce que tu dis il faut modifier ainsi, sinon tu valorises BB31 :
Cell.Offset(1, 0).Value = 1 

Je te conseille aussi de rajouter la définition de la variable :
Dim cell As Range

Sinon ta macro fonctionne correctement sur mon poste...
Toujours zen
La perfection est atteinte, non pas lorsqu'il n'y a plus rien à ajouter, mais lorsqu'il n'y a plus rien à retirer. Antoine de Saint-Exupéry
0
sterf900 Messages postés 3 Date d'inscription mardi 2 septembre 2014 Statut Membre Dernière intervention 7 septembre 2014
7 sept. 2014 à 12:35
Bonjour, désolé pour l'attente mais j'ai beaucoup travaillé sur le sujet.

merci à gbinforme pour ton aide, ta modif fonctionne très bien..

merci beaucoup
0