Macro qui ne marche pas sur les lignes

Macro qui ne marche pas sur les lignes - Logiciels - Windows & Software

Marsh Posté le 12-06-2008 à 09:35:25    

Bonjour, j'ai encore un petit problème la macro marche mais je dois la relancer pour chaque ligne, merci de me dire ce qui cloche.
Sub Modif()
Dim Cel As Range, Cel2 As Range
 Set Cel = Range("B4:GK118" )
 
For Each Cel2 In Cel
 
If IsError(Cel2) = True Then
Cel2 = Cells(Cel2.Row + 1, Cel2.Column)
'Sheet.Select
End If
Next
 
End Sub

Reply

Marsh Posté le 12-06-2008 à 09:35:25   

Reply

Marsh Posté le 12-06-2008 à 11:22:21    

Bonjour
 
Ca serait mieux de poursuivre dans le post de départ.
 
A quoi ressemble ton tableau, car la c'est un peu vague...
 
Cordialement

Message cité 1 fois
Message édité par SuppotDeSaTante le 12-06-2008 à 11:23:04

---------------
Soyez malin, louez entre voisins !
Reply

Marsh Posté le 12-06-2008 à 13:46:27    

SuppotDeSaTante a écrit :

Bonjour
 
Ca serait mieux de poursuivre dans le post de départ.
 
A quoi ressemble ton tableau, car la c'est un peu vague...
 
Cordialement


Reply

Marsh Posté le 12-06-2008 à 13:48:40    

Désolée je ne savais pas.
Finalement j'ai résolu mon problème mais j'en ai un autre, la matrice ci-dessus fonctionne sur un nouveau classeur mais quand je l'insère dans mon classeur qui est assez lourd et avec plusieurs feuilles et une autre macro, mon programme plante et je vois pas comment faire. Merci
 
 
Sub Modif()  
Dim Cel As Range, Cel2 As Range  
Dim i As Integer  
 Set Cel = Range("B4:GK118" )  
   
For Each Cel2 In Cel  
i = 1  
While IsError(Cel2) = True  
    Cel2 = Cells(Cel2.Row + i, Cel2.Column)  
    'Sheet.Select  
    i = i + 1  
Wend  
 
Next  
   
End Sub  

Reply

Marsh Posté le 12-06-2008 à 14:14:35    

Re
 
Il plante, ok, mais quel est le message ? Il plante sur quel ligne ?
 
Sois un peu plus explicite... ;)


Message édité par SuppotDeSaTante le 12-06-2008 à 14:14:47

---------------
Soyez malin, louez entre voisins !
Reply

Marsh Posté le 12-06-2008 à 15:12:12    

Il plante excel, j'ai "excel ne répond pas" c'est ca qui est étrange

Reply

Marsh Posté le 12-06-2008 à 16:37:25    

Ah, laisse le tourner alors, c'est que ta boucle est surement tres longue.
Il met souvent ce message pour de longs traitements.
Essaie peut etre de mettre en debut de code un application.screenupdating=false
puis en fin, un application.screenupdating=true
Ca permet de ne pas "voir" le traitement de la macro.
 
Sinon, si tu trouves que c'est vraiment trop long, tu fais Ctrl Pause. ca va te basculer en mode pas a pas, et vas mettre en pause ton code.
Tu pourras ainsi voir la valeur de i et donc connaitre le nb de fois ou il est passé dns la boucle, il faut peut etre a un moment donné sortir de ton while.


Message édité par SuppotDeSaTante le 12-06-2008 à 16:38:24

---------------
Soyez malin, louez entre voisins !
Reply

Marsh Posté le 12-06-2008 à 20:45:34    

:heink: Que veux-tu faire exactement avec ta boucle ?
 :??:

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed