Bonjour à tous, 
Je viens d'écrire mon code en faisant bien attention de bien renseigner les plages de cellules mais ma boucle do while loop tourne sans arret et n'effectue pas l'instruction alors qu'elle devrait sur 13 lignes (non vides) sur 153. Je ne comprends pas ce que j'ai mal fait, voici le code:
	
	
	
	
	
		
Sans le do while loop, la macro marche correctement, sauf qu'à partir d'un moment elle copie la dernière ligne non vide sur toutes les cellules vides en dessous, mais ce n'est pas ce que je veux.
	
		
			
		
		
	
				
			Je viens d'écrire mon code en faisant bien attention de bien renseigner les plages de cellules mais ma boucle do while loop tourne sans arret et n'effectue pas l'instruction alors qu'elle devrait sur 13 lignes (non vides) sur 153. Je ne comprends pas ce que j'ai mal fait, voici le code:
		VB:
	
	
	Sub Bons_click()
Application.ScreenUpdating = False
Dim c As Range
Dim Lkd As String
Dim myrange1 As Range
Dim myrange2 As Range
Dim extract1 As Range
Dim extract2 As Range
Dim n As Integer
With ActiveSheet
    Set myrange1 = Union(Sheets("Mise_en_preparation").Range("T3:T156"), Sheets("Mise_en_preparation").Range("AE3:AE156"))
    Set myrange2 = Union(Sheets("Mise_en_preparation").Range("AP3:AP156"), Sheets("Mise_en_preparation").Range("BA3:BA156"))
    Set extract1 = Union(Sheets("Mise_en_preparation").Range("L2:T156"), Sheets("Mise_en_preparation").Range("W2:AE156"))
    Set extract2 = Union(Sheets("Mise_en_preparation").Range("AH2:AP156"), Sheets("Mise_en_preparation").Range("AS2:BA156"))
   
    For n = 3 To 156
        Do While cells(n, 12) <> ""
            For Each c In myrange1
               
                        If cells(c.Row, myrange1.Column) > "" Then
                            Lkd = cells(c.Row, myrange1.Column).Value
                         Else
                             cells(c.Row, myrange1.Column).Value = Lkd
                            
                        End If
            Next
    Next
End With
End Sub
	Sans le do while loop, la macro marche correctement, sauf qu'à partir d'un moment elle copie la dernière ligne non vide sur toutes les cellules vides en dessous, mais ce n'est pas ce que je veux.