Bordereau par armoire

Bonjour,

Je travail actuellement sur le développement d'un bordereau pour mon entreprise. Pour des soucis de confidentialité, j'ai très largement simplifié mon document.

Le fichier est composé de 3 onglets. L'onglet Bordeau permet de dresser les quantités par armoire ( AA, AB, AC ou AD) en fonction de différentes actions. Un prix est associé a chaque élément.

L'onglet devis permet de dresser un devis au client en fonction des quantités TOTAL. Ce que je souhaite faire, c'est de pouvoir sélectionner mon armoire ( via le menu déroulant de la cellule B7 de l'onglet devis par armoire) de façon a pouvoir dresser au client des devis par armoire ( en fonction des quantités dans le tableau de l'onglet bordereau )et donc pas seulement un devis total.

Je pense qu'il est nécessaire de réaliser cela par macro, ou autrement si vous avez d'autre idée.

17bordereau-test.xlsx (133.21 Ko)

Je vous joins évidemment un fichier test pour faciliter la compréhension,

Merci à vous,

Bonjour,

Essayez ceci

Cdlt

Bonjour,

Merci beaucoup c'est excellent ! Serait il possible que la mise a jour ce face automatiquement lorsque l'on change le nom de l'armoire dans le menu déroulant et non en cliquant sur le bouton prévu a cette effet ?

Encore merci ,

Oui, voilà

Cdlt

Merci beaucoup,

Malheureusement je n'arrive pas a l'adapté a mon fichier réel de chiffrage. En effet mon onglet Bordereau est différent de celui que je vous ai proposé au début. Je vous joins donc le nouveau fichier si vous pouviez l'adapter à nouveau s'il vous plait

Voilà le code adapté à votre fichier:

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = "$B$7" Then
        Dim f1 As Worksheet, f2 As Worksheet
        Dim DerLig_f1 As Long, DerLig_f2 As Long, a As Range
        Dim i As Long
        Application.ScreenUpdating = False
        Set f1 = Sheets("Bordereau")
        Set f2 = Sheets("Devis par armoire")
        DerLig_f1 = f1.Range("C" & Rows.Count).End(xlUp).Row 'recherche de la dernière ligne de la feuille "Bordereau"
        DerLig_f2 = 11 '1ère ligne à remplir dans le devis
        Armoire = f2.Range("B7").Value 'Armoire sélectionnée
        With f1.Rows(15) 'Ligne sur laquelle se situe le nom des armoires
            Set a = .Find(Armoire, lookat:=xlWhole) 'on recherche l'emplacement de l'armoire  sur  la ligne
            For i = 18 To DerLig_f1
                f2.Cells(DerLig_f2, "B") = f1.Cells(i, "C") 'Descriptif
                f2.Cells(DerLig_f2, "D") = f1.Cells(i, a.Column) 'Quantité par armoire
                f2.Cells(DerLig_f2, "E") = f1.Cells(i, "H") 'prix unitaire
                f2.Cells(DerLig_f2, "F") = f2.Cells(DerLig_f2, "D") * f2.Cells(DerLig_f2, "E") 'total
                DerLig_f2 = DerLig_f2 + 2 'prochaine ligne à remplir dans le devis
            Next i
        End With
    End If
    Set a = Nothing
    Set f1 = Nothing
    Set f2 = Nothing
End Sub

le fichier

A l'avenir, déposé un pseudo fichier avec la même structure que le fichier réel.

Cdlt

Encore merci à vous,

Dernier soucis, je me retrouve avec cela dans les cellules de mon onglet devis par armoire a chaque fois que je change d'armoire dans le menu déroulant ces infos apparaissent je ne comprend pas.

Merci à vous

image

Bon, j'ai ajouté un effacement des données précédemment récupérées.

Bonjour,

Merci pour votre réponse.

J'ai un dernier problème. J'aimerais que lorsque dans l'onglet récap une quantité vaut 0 qu'elle n'apparaissent pas dans l'onglet devis par armoire.

Par exemple :

image

par exemple ici mise en place horloge astro pour l'armoire AB vaut 0 du coup je veux qu'il n'apparaissent pas dans le bordereau :

image

Merci à vous,

Bonjour,

Voilà la modif:

Cdlt

Rechercher des sujets similaires à "bordereau armoire"