Microsoft 365 VBA et User form

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

dominiquekobel

XLDnaute Nouveau
Bjr
je recherche un conseil pour l'exploitation d'un deviseur
je récupère et intègre une liste de produit depuis un logiciel de gestion de stock (onglet source)
j'extrais via user form les produits de cette liste utiles pour le devis
1635511041402.png
partie colonne A à F (onglet TABLEAUDEVIS) (clic sur et choix du produit dans liste déroulante)

je voulais créer la valorisation "matière" en colonne J (saisie manuelle des quantités spécifiques au devis) à L (calcul des coûts matières)
cela fonctionne pour le 1er devis mais quand je remet la sélection des articles à zéro
1635510993653.png
pour créer un second devis les formules que j'ai en col K et L s’effacent

Une solution pour que mes formules restent après le RAZ
ci joint exemple fictif de fichier

merci d'avance pour votre aide
 

Pièces jointes

Solution
C
Re,

Alors voici votre fichier avec la formule corrigée 😉

J'ai changé le format et la formule de votre colonne "L" car mettre du texte pour avoir un espace vide n'est jamais bon avec des chiffres 😜

A+
Bonsoir Domnique

Logique, le tableau est supprimé, je ferais juste un effacement

Mais sinon il faut utiliser la fonction DECALER()
Exemple (je ne sais pas si la formule est bonne)
VB:
=SI(J2>0;DECALER(TDevis[[#En-têtes];[Prix d''achat]];1;0)*J2;" ")

A+
 
Bonsoir dominique
Bonsoir Bruno ,le Forum
Moi pas compris ! mais Bon ! Lol
j'ai modifié, afin de participer, la procédure "Effacer Devis"
VB:
Sub Effacer_Devis() 'macro pour effacer donnees en feuille Source
    With Range("TDevis").ListObject
        If Not .DataBodyRange Is Nothing Then
                 .DataBodyRange.Delete
        End If
    End With
End Sub
ça evite le Bug lorsque le Tableau (TDevis) est Vide ! Eh voilà! (Comme dirait ma petite fille Lol)
Bonne fin de Soirée
Jean marie
 
Bonsoir dominique
Bonsoir Bruno ,le Forum
Moi pas compris ! mais Bon ! Lol
j'ai modifié, afin de participer, la procédure "Effacer Devis"
VB:
Sub Effacer_Devis() 'macro pour effacer donnees en feuille Source
    With Range("TDevis").ListObject
        If Not .DataBodyRange Is Nothing Then
                 .DataBodyRange.Delete
        End If
    End With
End Sub
ça evite le Bug lorsque le Tableau (TDevis) est Vide ! Eh voilà! (Comme dirait ma petite fille Lol)
Bonne fin de Soirée
Jean marie
Bjr Jean Marie
merci pour ta participation mais ça remet bien à zéro la partie colonnes de A à F mais les formules en K et L plantent avec des #ref?
une nouvelle piste?
merci
 
Re,

Navré de vous contredire, mais vous en l'avez pas mise ou pas correctement 🤨
il suffit de faire un recopier vers le bas

Sinon vous auriez ceci après RAZ du devis
1635601642210.png


Après je pense qu'il faut l'adapter, je ne sais pas comment vous utiliser votre formule ?
Est-ce que chaque ligne de gauche correspond à 1 ligne de droite ?
 
Re,

Navré de vous contredire, mais vous en l'avez pas mise ou pas correctement 🤨
il suffit de faire un recopier vers le bas

Sinon vous auriez ceci après RAZ du devis
Regarde la pièce jointe 1119952

Après je pense qu'il faut l'adapter, je ne sais pas comment vous utiliser votre formule ?
Est-ce que chaque ligne de gauche correspond à 1 ligne de droite ?
yes j'ai vu mon oubli.... ça colle mieux
oui a une ligne de gauche il y aura une ligne à droite avec des qtés
merci beaucoup pour votre participation
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Retour