Bonjour, 
Pouvez-vous me donner un coup de main
j'ai une plage que je copie sur une ligne
	
	
	
	
	
		
en suite j'efface la plage à retranscrire
	
	
	
	
	
		
et je peux recommencer l'opération
maintenant ce que j'aimerais faire au prochain enregistrement,
c'est décaler de trois celulles vers la droite mais en conservant le même canevas
pour comprendre, au second enregistrement le code initial devrait se transformer comme ceci (voir les positions de colonnes)
	
	
	
	
	
		
Comment puis-je construire une boucle avec ce décalage de cellules sans sortir des dix colonnes ?
au final si je prends les mêmes nombres lors de chaque enregistrement je devrais obtenir cela :
1 2 3 4 5 6 7 8 9 10
4 5 6 7 8 9 10 1 2 3
7 8 9 10 1 2 3 4 5 6
10 1 2 3 4 5 6 7 8 9
3 4 5 6 7 8 9 10 1 2
6 7 8 9 10 1 2 3 4 5
9 10 1 2 3 4 5 6 7 8
2 3 4 5 6 7 8 9 10 1
5 6 7 8 9 1 10 1 2 3
8 9 10 1 2 3 4 5 6 7
1 2 3 4 5 6 7 8 9 10 ...etc...
MERCI de votre aide 🙂
	
		
			
		
		
	
				
			Pouvez-vous me donner un coup de main
j'ai une plage que je copie sur une ligne
		Code:
	
	
	Sub Copy_Bilan()
Dim Derlig1 As Long
    Set Wbk1 = ThisWorkbook
    
    Derlig1 = Wbk1.Worksheets("ULTIMATE").Cells.Find("*", , , , , xlPrevious).Row
    
  
        Wbk1.Worksheets("ULTIMATE").Cells(Derlig1 + 1, 2).Value = Wbk1.Worksheets("ULTIMATE").Range("C3").Value
        Wbk1.Worksheets("ULTIMATE").Cells(Derlig1 + 1, 3).Value = Wbk1.Worksheets("ULTIMATE").Range("C4").Value
        Wbk1.Worksheets("ULTIMATE").Cells(Derlig1 + 1, 4).Value = Wbk1.Worksheets("ULTIMATE").Range("C5").Value
        Wbk1.Worksheets("ULTIMATE").Cells(Derlig1 + 1, 5).Value = Wbk1.Worksheets("ULTIMATE").Range("E2").Value
        Wbk1.Worksheets("ULTIMATE").Cells(Derlig1 + 1, 6).Value = Wbk1.Worksheets("ULTIMATE").Range("E3").Value
        Wbk1.Worksheets("ULTIMATE").Cells(Derlig1 + 1, 7).Value = Wbk1.Worksheets("ULTIMATE").Range("E4").Value
        Wbk1.Worksheets("ULTIMATE").Cells(Derlig1 + 1, 8).Value = Wbk1.Worksheets("ULTIMATE").Range("E5").Value
        Wbk1.Worksheets("ULTIMATE").Cells(Derlig1 + 1, 9).Value = Wbk1.Worksheets("ULTIMATE").Range("E6").Value
        Wbk1.Worksheets("ULTIMATE").Cells(Derlig1 + 1, 10).Value = Wbk1.Worksheets("ULTIMATE").Range("E7").Value
        Wbk1.Worksheets("ULTIMATE").Cells(Derlig1 + 1, 11).Value = Wbk1.Worksheets("ULTIMATE").Range("E8").Value
        
 MsgBox "Transfert Terminé "
End Sub
	en suite j'efface la plage à retranscrire
		Code:
	
	
	Sub Clear()
Sheets("ULTIMATE").Range("B2:B8").ClearContents
End Sub
	et je peux recommencer l'opération
maintenant ce que j'aimerais faire au prochain enregistrement,
c'est décaler de trois celulles vers la droite mais en conservant le même canevas
pour comprendre, au second enregistrement le code initial devrait se transformer comme ceci (voir les positions de colonnes)
		Code:
	
	
	Sub Copy_Bilan()
Dim Derlig1 As Long
    Set Wbk1 = ThisWorkbook
    
    Derlig1 = Wbk1.Worksheets("ULTIMATE").Cells.Find("*", , , , , xlPrevious).Row
    
  
        Wbk1.Worksheets("ULTIMATE").Cells(Derlig1 + 1, 5).Value = Wbk1.Worksheets("ULTIMATE").Range("C3").Value
        Wbk1.Worksheets("ULTIMATE").Cells(Derlig1 + 1, 6).Value = Wbk1.Worksheets("ULTIMATE").Range("C4").Value
        Wbk1.Worksheets("ULTIMATE").Cells(Derlig1 + 1, 7).Value = Wbk1.Worksheets("ULTIMATE").Range("C5").Value
        Wbk1.Worksheets("ULTIMATE").Cells(Derlig1 + 1, 8).Value = Wbk1.Worksheets("ULTIMATE").Range("E2").Value
        Wbk1.Worksheets("ULTIMATE").Cells(Derlig1 + 1, 9).Value = Wbk1.Worksheets("ULTIMATE").Range("E3").Value
        Wbk1.Worksheets("ULTIMATE").Cells(Derlig1 + 1, 10).Value = Wbk1.Worksheets("ULTIMATE").Range("E4").Value
        Wbk1.Worksheets("ULTIMATE").Cells(Derlig1 + 1, 11).Value = Wbk1.Worksheets("ULTIMATE").Range("E5").Value
        Wbk1.Worksheets("ULTIMATE").Cells(Derlig1 + 1, 2).Value = Wbk1.Worksheets("ULTIMATE").Range("E6").Value
        Wbk1.Worksheets("ULTIMATE").Cells(Derlig1 + 1, 3).Value = Wbk1.Worksheets("ULTIMATE").Range("E7").Value
        Wbk1.Worksheets("ULTIMATE").Cells(Derlig1 + 1, 4).Value = Wbk1.Worksheets("ULTIMATE").Range("E8").Value
        
 MsgBox "Transfert Terminé "
End Sub
	Comment puis-je construire une boucle avec ce décalage de cellules sans sortir des dix colonnes ?
au final si je prends les mêmes nombres lors de chaque enregistrement je devrais obtenir cela :
1 2 3 4 5 6 7 8 9 10
4 5 6 7 8 9 10 1 2 3
7 8 9 10 1 2 3 4 5 6
10 1 2 3 4 5 6 7 8 9
3 4 5 6 7 8 9 10 1 2
6 7 8 9 10 1 2 3 4 5
9 10 1 2 3 4 5 6 7 8
2 3 4 5 6 7 8 9 10 1
5 6 7 8 9 1 10 1 2 3
8 9 10 1 2 3 4 5 6 7
1 2 3 4 5 6 7 8 9 10 ...etc...
MERCI de votre aide 🙂