Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2016 Facture Devis Tableau excel

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 !

David10

XLDnaute Nouveau
Salut, j'espere que vous aller bien?
je viens vers vous pour savoir si je peux avoir une reponse à ma question.
Depuis ma derniere question sur ce forum j'ai reussi à faire pas mal de chose et d'amélioration au niveau de mon fichier.
Ma Question:
comment je peux faire pour que les données sur ma facture (qui n'est pas trop différent de mon devis à part les quantités et les libellés) avec un bouton s'intègre directement dans ma base de données sur la ligne correspondant à SON devis, pour éviter que je vienne les réécris à la main.

Merci bien d'avance
 
Solution
Un essai à compléter.
VB:
Option Explicit

Sub EnregistrerFacture()
    Dim c As Range, NoDevis As Range, Ligne As Integer
    Dim Bdd As Worksheet, Fact As Worksheet
    Set Bdd = Worksheets("BDD-CHANTIERS")
    Set Fact = Worksheets("facture(3)")

    Set NoDevis = Fact.Range("C15")

    Set c = Range("T_DEVISS[N°Devis]").Find(what:=NoDevis.Value, LookAt:=xlWhole)

    If Not c Is Nothing Then

        Ligne = c.Row    ' n° de ligne du devis

        Bdd.Cells(Ligne, 34) = Fact.Range("c14")
        Bdd.Cells(Ligne, 35) = Fact.Range("c15")
        Bdd.Cells(Ligne, 36) = Fact.Range("g51")

        'faire la suite

    Else
        MsgBox "N° devis " & NoDevis & " non trouvé!"
    End If
    Set Bdd = Nothing
    Set Fact = Nothing...
Un essai à compléter.
VB:
Option Explicit

Sub EnregistrerFacture()
    Dim c As Range, NoDevis As Range, Ligne As Integer
    Dim Bdd As Worksheet, Fact As Worksheet
    Set Bdd = Worksheets("BDD-CHANTIERS")
    Set Fact = Worksheets("facture(3)")

    Set NoDevis = Fact.Range("C15")

    Set c = Range("T_DEVISS[N°Devis]").Find(what:=NoDevis.Value, LookAt:=xlWhole)

    If Not c Is Nothing Then

        Ligne = c.Row    ' n° de ligne du devis

        Bdd.Cells(Ligne, 34) = Fact.Range("c14")
        Bdd.Cells(Ligne, 35) = Fact.Range("c15")
        Bdd.Cells(Ligne, 36) = Fact.Range("g51")

        'faire la suite

    Else
        MsgBox "N° devis " & NoDevis & " non trouvé!"
    End If
    Set Bdd = Nothing
    Set Fact = Nothing
    Set NoDevis = Nothing
    Set c = Nothing
End Sub
edit: code corrigé
 
Dernière édition:
Merci @cp4 je vais essayer de m'en inspirer pour mon fichier, je comprends mieux. je te dirai quand j'aurai reussi.
 
J'ai reussi à le complèter et l'appliquer en fonction de mon fichier. Encore merci beaucoup @cp4 !!!
 
- 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

Discussions similaires

Réponses
6
Affichages
86
Réponses
10
Affichages
607
Réponses
16
Affichages
667
Réponses
11
Affichages
537
Réponses
7
Affichages
280
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…