Bonsoir,
Il me semblait que ce que tu souhaitais était bien la suppression sur la feuille en sélectionnant dans la ListBox, ce qui paraissait logique ! Mais tu si veux pouvoir faire des manips dans la ListBox, sans que cela affecte la feuille, c'est possible, c'était le cas dans ton code initial, mais dans ta configuration actuelle tu rajoutes un bouton de commande pour cette opération.
Et en ce qui concerne le code attaché au bouton, avant de supprimer l'Item, tu prélèves la valeur surface (à convertir en nombre) pour la déduire de la valeur du total de la TextBox (également à convertir en nombre). [Les données en sortie d'une TextBox ou d'une ListBox sont nécessairement de type String, ce pourquoi il faut convertir, la façon la plus rapide de le faire est d'utiliser Val en remplaçant les virgules par des points, car Val ne connait que le point comme séparateur décimal, faire l'opération dans une variable pour affecter le résultat à la TextBox.]
Par ailleurs, si j'ai apporté quelques modifications indispensable, par exemple l'introduction du numéro d'ilôt dans la ListBox, nécessaire pour discriminer les homonymes au niveau nom, je ne suis pas intervenu sur d'autres éléments.
Tu n'as pas de bouton pour fermer le Userform ! (a-priori, il est utile d'en avoir un... !)
Je n'ai pas introduit de test sur Combo_Change pour vérifier qu'une sélection était faite, car tu as des éléments dans ta liste avec 0 en surface et rien en colonne 4. Ces éléments peuvent donc apparaître lorsque tu effaces la valeur de la Combo sans sélectionner.
C'est une méthode indirecte pour ne pas les oublier et les exclure de toute manipulation, mais il serait bon que tu te penches sur leur statut pour mettre en place quelque chose de plus régulier.
Cordialement.