Bonjour DamienPe et le Forum,
voici le code modifié
Sub Envoi_Mail()
'https://forum.excel-pratique.com/excel/envoi-mail-automatique-sous-condition-193074
Application.ScreenUpdating = False
'Trouve la derniere ligne des désignation
DerLigne = Feuil1.Cells(Rows.Count, 1).End(xlUp).Row
'On défini l'entete de ton tableau (jusqu'a colonne 10 [J])
Set Range_Besoin = Feuil1.Range(Feuil1.Cells(1, 1), Feuil1.Cells(1, 10))
'si la colonne G est vide alors la macro s'arrête <===============
If WorksheetFunction.CountA(Range("G2:G" & DerLigne)) = 0 Then Exit Sub
'Boucle des lignes 2 à la derniere ligne
For Ligne = 2 To DerLigne
'si "QUANTITÉ À COMMANDER" > "0" alors
If Feuil1.Cells(Ligne, 7).Value > 0 Then
'On défini les cellules a mettre dans le corp du mail
Set Range_Besoin = Union(Range_Besoin, Feuil1.Range(Feuil1.Cells(Ligne, 1), Feuil1.Cells(Ligne, 10)))
End If
Next Ligne
RangeInBodyMail
End Sub
Cordialement