XL 2016 Facture Devis Tableau excel

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...

cp4

XLDnaute Barbatruc
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:

David10

XLDnaute Nouveau
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é
Merci @cp4 je vais essayer de m'en inspirer pour mon fichier, je comprends mieux. je te dirai quand j'aurai reussi.
 

David10

XLDnaute Nouveau
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é
J'ai reussi à le complèter et l'appliquer en fonction de mon fichier. Encore merci beaucoup @cp4 !!!
 

Discussions similaires

Réponses
8
Affichages
449

Statistiques des forums

Discussions
312 160
Messages
2 085 841
Membres
103 002
dernier inscrit
LERUS