Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Boucle ne boucle pas

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

L

landry81

Guest
Boujour à tous,
Suite à mes recherches sur différents forum qui ne m'ont pas apporter de réponses, je retourne vers vous.
Je suis débutant en VBA et je dois réaliser pour mon stage un petit fichier. Je coince pour un bouton d'archivage. Le but est de :
- réaliser une recherche de référence (nom de la cellule "archive_réf")
- copier une ligne de l'onglet 1 suite à cette recherche
- supprimer toutes les lignes de l'onglet 2 suite à cette recherche

Le code que j'utilise pour l'instant est le suivant :
Code:
Sub Archiver()
   Dim n As Integer
   Dim lig As Range
         Set lig = Worksheets("onglet3").Range("A65536").End(xlUp).Offset(1, 0)
           
      For n = 1 To 2000
       If Worksheets("onglet1").Range("A" & n).Value = Range("archive_ref").Value Then
           Worksheets("onglet1").Range("A" & n).EntireRow.Cut
       lig.Select
       ActiveSheet.Paste
    
Dim I     As Long
Dim Plage As Range
    Set Plage = Worksheets("onglet2").Range("A7:A" & Range("A7").End(xlDown).Row)
For I = Plage.Cells.Count To 1 Step -1
  If Plage.Cells(I).Value = Range("archive_ref").Value Then
    Plage.Cells(I).EntireRow.Delete
  End If
Next
   End If
       Next n

  End Sub

Le problème :
- Si la référence n'existe pas dans l'onglet1 toutes les lignes de l'onglet 2 sont supprimer (donc jusque là tout va bien 🙂 )
- Si la référence existe dans l'onglet 1, la ligne est déplacer, mais les lignes de l'onglet 2 ne sont pas supprimer !! comme si l'égalité de la fonction if bloqué la progression de la boucle.
Auriez vous une solution pour que la boucle continue pour pouvoir supprimer toutes les lignes de l'onglet 2 ?
Par avance merci,
Landry
 
Re : Boucle ne boucle pas

Bonjour landry81,

Bienvenue sur XLD,

pas sûr que ce soit ça mais à tester :

Code:
Set Plage = Worksheets("onglet2").Range("A7:A" & [COLOR=red]Worksheets("onglet2"[/COLOR][COLOR=red]).[/COLOR]Range("A7").End(xlDown).Row)
 
Re : Boucle ne boucle pas

Salut tototiti2008,
merci pour ta réponse aussi rapide, et surtout merci beaucoup pour ta remarque 🙂
ça fonctionne !! 🙂
à bientôt sur le forum
 
- 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
5
Affichages
906
Réponses
15
Affichages
775
Réponses
2
Affichages
526
Réponses
4
Affichages
729
Réponses
8
Affichages
777
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…