Private Sub Cb_Facture_Click()
Dim Nom As Range, Lig As Long, Rep As Integer, i As Long
Rep = MsgBox("Veuillez confirmer.", vbQuestion + vbYesNo, "Vous voulez refaire les calculs ?")
If Rep = vbNo Then Exit Sub
Application.ScreenUpdating = False
ActiveWorkbook.Unprotect
'on efface les factures existantes
Application.DisplayAlerts = False
[COLOR=Blue][B]For i = Sheets.Count To 1 Step -1 ' ici ça efface les feuilles contenant " Fact "
If Sheets(i).Name Like "* Fact *" Then Sheets(i).Delete
Next[/B][/COLOR]
Application.DisplayAlerts = True
Sheets("model facture").Visible = True
[COLOR=Blue][B]Sheets("Reversement").Visible = True
Sheets("controle").Visible = True[/B][/COLOR]
'pour chaque nom de la cellule A9 à la dernière cellule non vide colonne A.
For Each Nom In Range("A9", [A8].End(xlDown))
Lig = Nom.Row
Sheets("model facture").Copy After:=Sheets(Sheets.Count)
ActiveSheet.Name = Lig - 8 & " Fact " & Nom.Value & Left(Range("B" & Lig).Value, 1)
With Sheets(Lig - 8 & " Fact " & Nom.Value & Left(Range("B" & Lig).Value, 1))
'copie vers la facture
'Lig correspond à la ligne du nom de la feuille "Commande"
.[G4].Value = Range("A" & Lig).Value
.[G5].Value = Range("B" & Lig).Value
.[G8].Value = [B4].Value
.[A10].Value = [B3].Value
.[B15].Value = Range("G" & Lig).Value
.[B17].Value = Range("H" & Lig).Value
.[B19].Value = Range("I" & Lig).Value
.[B25].Value = Range("N" & Lig).Value
.[B30].Value = Range("S" & Lig).Value
.[D21].Value = Range("T" & Lig).Value
End With
Next Nom
Application.ScreenUpdating = True
Sheets("model facture").Visible = False
Sheets("Reversement").Visible = False
Sheets("controle").Visible = False
MsgBox ("La factures viennent de se supprimer, il faut les recalucler")
Sheets("Commande").Activate
End Sub