utiliser des cellules dans une boucle

  • Initiateur de la discussion jmt0
  • Date de début
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.
 

PascalXLD

XLDnaute Barbatruc
Modérateur
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
 

jmt0

XLDnaute Nouveau
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
 

PascalXLD

XLDnaute Barbatruc
Modérateur
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
 

Discussions similaires

Statistiques des forums

Discussions
312 198
Messages
2 086 146
Membres
103 130
dernier inscrit
FRCRUNGR