[Résolu][VB-Excel-Macro]Boucle qui ne boucle pas.

Boucle qui ne boucle pas. [Résolu][VB-Excel-Macro] - VB/VBA/VBS - Programmation

Marsh Posté le 29-04-2008 à 13:59:58    

Bonjour à tous, pour mon premier post j'ai une petite colle à vous poser:
 
En effet un de mes collegues m'a demandé de lui faire une macro (il s'avère que je le fais via VB) permettant de lui faire un traitement automatique de données en fonction de certains paramètres.
 
Je m'explique : j'ai une colonne avec des dates de rendu de location (société de BTP), il veut que 2 jours avant la date expiratoire, une feuille lui soit imprimé directement, feuille étant destiné à etre faxé au chantier pour leur rappeler de rendre le matériel loué.
J'ai donc codé sous VB une fonction faisant ce traitement à l'ouverture de son classeur excel.
 
Seulement voila quand je fais la fontion au "Pas-à-Pas" elle fonctionne parfaitement, compare toute les dates de la colonne dites "dead-line" à la date d'aujourd'hui et rempli une autre feuille avec les infos que je veux, a la condition que je veux.(je vous met le code juste apres)
 
Le soucis c'est que en éxécution, quand il trouve une égalité, il effectu bien le traitement, rempli bien la feuille et l'imprime tout seul, mais stop l'execution, ne vérifiant pas la suite des cellules de ma colonne.
 
 
je vous mets mon code :  

Code :
  1. Sub TraitementAuto()
  2. Dim plage, finplage As Range
  3. Sheets("location" ).Activate
  4. ActiveSheet.Range("G65536" ).End(xlUp).Select
  5. LigneFinG = Selection.Row
  6. For Each macellule In Range("G2:G" & LigneFinG)
  7. If Cells(1, "C" ) + 2 = macellule.Value Then
  8. Sheets("feuil2" ).Activate
  9. Range("A19:B29" ).Select
  10. Selection.Delete
  11. Sheets("location" ).Activate
  12. macellule.Select
  13. Selection.Copy
  14. Sheets("feuil2" ).Activate
  15. Cells(32, "D" ).Select
  16. Selection.PasteSpecial xlValues
  17. Sheets("location" ).Activate
  18. Cells(macellule.Row, "D" ).Select
  19. Selection.Copy
  20. Sheets("feuil2" ).Activate
  21. Cells(14, "D" ).Select
  22. Selection.PasteSpecial xlValues
  23. Sheets("location" ).Activate
  24. Cells(macellule.Row, "B" ).Select
  25. While Selection.Value = Cells(macellule.Row, "B" )
  26. ActiveCell.Offset(1, 0).Select
  27. Wend
  28. plage = ActiveCell.Offset(-1, 0).AddressLocal
  29. Range("E" & macellule.Row & ":E" & Range(plage).Row).Select
  30. Selection.Copy
  31. Sheets("feuil2" ).Activate
  32. Range("A19" ).Select
  33. Selection.PasteSpecial xlAllAtOnce
  34. Sheets("location" ).Activate
  35. Range("K" & macellule.Row & ":K" & Range(plage).Row).Select
  36. Selection.Copy
  37. Sheets("feuil2" ).Activate
  38. Range("B19" ).Select
  39. Selection.PasteSpecial xlAllAtOnce
  40. ActiveWindow.SelectedSheets("feuil2" ).PrintOut Copies:=1
  41. End If
  42. Next macellule
  43. End Sub


 
J'ai tenté de mettre une pause avant ou après l'impression car j'ai pensé que c'est cela qui fait arreter l'execution mais sans succès.
 
JE suis bloqué j'ai vraiment besoin de votre aide ^^.
 
Bonne journée,
Marco.


Message édité par marco-X95 le 30-04-2008 à 09:57:28
Reply

Marsh Posté le 29-04-2008 à 13:59:58   

Reply

Marsh Posté le 29-04-2008 à 21:35:21    

Bonsoir,
as-tu essayé en mettant:
Sheets("location" ).Activate
en ligne 54?

Message cité 1 fois
Message édité par seniorpapou le 29-04-2008 à 21:37:42
Reply

Marsh Posté le 30-04-2008 à 09:56:38    

seniorpapou a écrit :

Bonsoir,
as-tu essayé en mettant:
Sheets("location" ).Activate
en ligne 54?


 
Merci !! je me disais bien que c'était tout bête, tu assure :).
 
Comme toujours ce forum est une mine d'or.  
 
Bonne journée :)

Reply

Sujets relatifs:

Leave a Replay

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