utiliser des cellules dans une boucle

  • Initiateur de la discussion Initiateur de la discussion jmt0
  • 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 !

J

jmt0

Guest
Bonjours,

je m'arrache les cheuveux depuis hier sur ce probleme

Code:
For i = Ligne_debut To ligne_fin
        If Cells(i, 5).Value = '0' Then
            Cells(i, 16) = 'Recirculation'
            Else: Cells(i, 16) = 'Pulvérisation'
        End If
    Next i

i, ligne debut et ligne fin sont des integers.

Voila, en fait je veut regarder toutes les cellules dans la collone 5, entre le ligne_début et la ligne_fin. En fonction de la valeur, je veut ecrire 'Recirculation' ou 'Pulvérisation' dans la colonne 16 de mon tableau!

Mais a mon grand desespoir, excel refuse ma formule Cells(i, 5).Value = '0', et aussi Cells(i, 16) = 'Recirculation'

Si quelqu'un pouvait m'eclairer un peut.
 
Bonjour

Bizarre Il faudrait voir le code dans son entier peut-être

Sinon en attendant essaies avec ceci :

For i = Ligne_debut To ligne_fin

If Range('E'& i).Value = '0' Then

Range('P' & i) = 'Recirculation'

Else: Range('P' & i) = 'Pulvérisation'

End If

Next i
 
c'est vite vu, le code est tout petit:



Sub taille_tableau()
' Macro permettant de définir la derniere celulle d'un tableau
'
' par jmt0 pour

Range('A65536').End(xlUp).Select
Ligne_debut = 14
ligne_fin = ActiveCell.Row


Range('IV14').End(xlToLeft).Select
Colonne_debut = 1
Colonne_fin = ActiveCell.Column

End Sub

Sub recherche_pulvérisation()
'
' Macro permettant d'ajoutter en fin de chaque ligne l'information de recirculation ou de pulvérisation
'
' par jmt0 pour

Dim i As Integer

'For i = Ligne_debut To ligne_fin
' If i = i Then
'If Cells(i, 5).Value = '0' Then
' Cells(i, 16) = 'Recirculation'
' Else: Cells(i, 16) = 'Pulvérisation'
' End If
' Next i

For i = Ligne_debut To ligne_fin
If Range('E' & i).Value = '0' Then
Range('P' & i) = 'Recirculation'
Else: Range('P' & i) = 'Pulvérisation'
End If
Next i


End Sub

Sub gestionmacro()

Dim Ligne_debut As Long
Dim ligne_fin As Long
Dim Colonne_debut As Long
Dim Colonne_fin As Long

Application.ScreenUpdating = False
Call taille_tableau
Call recherche_pulvérisation
Application.ScreenUpdating = True
End Sub




edit :a l'heure actuel ca bloque la:
If Range('E' & i).Value = '0' Then

Message édité par: jmt0, à: 14/06/2005 11:21
 
Re

Ton erreur vient du fait que tu as déclarer tes variables dans une macro elles ne sont donc valables que dans celle-ci

Si tout ton code est dans le même module tu les déclares en début de module en dehors d'un macro (procédure)

Si ton code est dans des modules tu les déclares en début d'un module en dehors d'un macro (procédure) mais en remplaçant Dim par Public

Je te mets ton code en dessous comme si tout est dans le même module

_______________________________________________________________

Dim Ligne_debut As Long
Dim ligne_fin As Long
Dim Colonne_debut As Long
Dim Colonne_fin As Long

Sub taille_tableau()
' Macro permettant de définir la derniere celulle d'un tableau
'
' par jmt0 pour


Ligne_debut = 14
ligne_fin = Range('A65536').End(xlUp).row



Colonne_debut = 1
Colonne_fin = Range('IV14').End(xlToLeft).column

End Sub

Sub recherche_pulvérisation()
'
' Macro permettant d'ajoutter en fin de chaque ligne l'information de recirculation ou de
pulvérisation
'
' par jmt0 pour

Dim i As Integer

'For i = Ligne_debut To ligne_fin
' If i = i Then
'If Cells(i, 5).Value = '0' Then
' Cells(i, 16) = 'Recirculation'
' Else: Cells(i, 16) = 'Pulvérisation'
' End If
' Next i

For i = Ligne_debut To ligne_fin
If Range('E' & i).Value = '0' Then
Range('P' & i) = 'Recirculation'
Else: Range('P' & i) = 'Pulvérisation'
End If
Next i


End Sub

Sub gestionmacro()

Application.ScreenUpdating = False
Call taille_tableau
Call recherche_pulvérisation
Application.ScreenUpdating = True
End Sub


Edition:

Je t'ai retiré le select inutile dans la recherche ligne et colonne

Message édité par: Pascal76, à: 14/06/2005 11:30
 
- 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
10
Affichages
644
Réponses
3
Affichages
876
A
Réponses
4
Affichages
868
A
L
Réponses
35
Affichages
3 K
Léraud Florian
L
M
Réponses
4
Affichages
973
mimich_88
M
Retour