Bonjour François,
Meilleurs voeux à toi aussi :)
Merci beaucoup pour cette proposition de développement, la mise en forme n'en sera que meilleure !
Par contre, comme je te le disais, j'ai déjà une macro qui permet d'insérer une ligne et de copier certaines données de la feuille "Bordereau" sur la page Index. Elle m'avait été proposée par XCellus de ce forum et me convient à merveille!
Cependant, je ne vois pas comment insérer le code que tu m'as proposé dans celui que XCellus avait développé pour moi.
Je poste ci-dessous la proposition de XCellus à l'époque, à voir si on peut adapter ta proposition François :)
Private Sub Valider_click()
Worksheets("Bordereau").Copy After:=Sheets(Sheets.Count)
With ActiveSheet
.Range("M4") = TextBox_NumBordereau
.Range("D17") = ComboBox1
For k = 17 To 23
If k > 17 Then .Range("D" & k) = Controls("TextBox_" & k - 6)
.Range("L" & k) = Controls("TextBox_" & k - 16)
Next k
.Range("B29") = ComboBox_Type_expédition
.Range("J29") = TextBox_Date
.Range("J35") = TextBox_Remarque
For n = 45 To 53 Step 2
p = p + 1
If Controls("ComboBox_PS" & p) = "" Then Exit For
.Range("B" & n) = Controls("ComboBox_PS" & p)
.Range("D" & n) = Controls("Designation_materiel_" & p)
.Range("L" & n) = Controls("N°serie_" & p)
.Range("O" & n) = Controls("Quantite_" & p)
Next n
.Range("B58") = TextBox_Motif
.Range("E66") = ComboBox_Emballage
.Range("E67") = TextBox_Dimensions
.Range("E68") = TextBox_Poids
.Name = Range("M4")
End With
Sheets("Index").Select
'Report sur Index et sous-traitance d'insertion de lignes
With Sheets("Index")
Range("A4").Select
InsLig (p - 1)
For m = 45 To 53 Step 2
q = q + 1: Lig = 3 + q
If Controls("ComboBox_PS" & q) = "" Then Exit For
.Range("A" & Lig) = TextBox_NumBordereau
.Range("B" & Lig) = ComboBox1
.Range("C" & Lig) = Controls("ComboBox_PS" & q)
.Range("D" & Lig) = Controls("Designation_materiel_" & q)
.Range("E" & Lig) = Controls("N°serie_" & q)
.Range("F" & Lig) = TextBox_Date
Next m
End With
End Sub
'Plus l'ajout de l'insertion de lignes à placer dans un module du classeur
Sub InsLig(p)
For L = 1 To p
Range("A4:F4").Select
Selection.EntireRow.Insert
Range("A4:F4").RowHeight = 15
Range("A4:F4").Font.Size = 11
Range("A3").Select
Next L
End Sub
Tu me serais d'une grande aide :)
Bon après midi
JB