Listbox ligne choisi

Résolu
Bonjour, a vous.

j'ai une listbox de pièces, quand je choisi une pièces elle doit aller directement sur la feuille facture et ainsi de suite. je n'arrive pas a accumuler les pièces une en dessous de l'autre (une a la suite des autres) jusqu'à la facture soit pleine.
j'ai mis mon fichier sur dropbox.

https://www.dropbox.com/s/36k1eu693ugnt0i/Fact1Test.xlsm?dl=0
merci, de mettre un oeil dessus.

12 réponses

  1. Bonjour

    sa bosse pas dur

    tien encore une petite version

    http://cjoint.com/?3BhrZTrNf4F

    A+
    Maurice
    1. bonjours!

      le code fonctionne pas comme il faut, il ne prend pas la numérotation de la facture, autrement dit il s'écrase par dessus a chaque enregistrement.

      a+
      1. Bonjour
        oui on peux le faire
        voila un macro qui qui fonctionne a partir de Excel 2007
        avec la date edition
        Sub Edite_pdf()
        Range("K9").Value = DateValue(Now)
        ActiveSheet.PageSetup.PrintArea = "$B$8:$L$55"
        NonFiche = "Fact" & Format(Range("K10").Value, "00000")
        Repertoire = ThisWorkbook.Path & "\"
        Chemin = Repertoire & NonFiche & ".pdf"
           ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
                Chemin, Quality:=xlQualityStandard, _
                IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
                False
        End Sub
        

        A+
        Maurice
        1. Bonjour Maurice!
          Tu n'as pas à être désolée de jouer avec mon fichier, lol .Je vois que tu as modifié beaucoup
          les codes archaïques qu'il contenait. Je n'ai vraiment pas de problème avec ça.
          Une chose que j'ai remarqué, c'est que quand j'avais mis la date (aujourd'hui en code) bien quand j'enregistre la facture, si j'ouvre cette facture sauvegarder bien la date se met à jour de la journée actuelle, elle ne garde pas la date quelle a été faite.
          J'ai une question, est 'il possible d'enregistrer aussi dans le même dossier en format.PDF?
          Présentement cela fonctionne bien, ?
          a+
          1. Bonjour
            je joue avec ton fichier desolée
            en voila un autre

            http://cjoint.com/?3BfwrzBiRZr

            A+

            Maurice
            1. bonjour!

              le dernier fichier que tu as envoyer est malade, lol. c'est surement une erreur, et je ne sais pas ce que tu voulais rajouter de plus dans la modife.
              curiosité oblige!

              a+
              1. Bonjour

                Encore des petites modife

                http://cjoint.com/?3BfoDk8buAS

                A+
                Maurice
                1. bonjour Maurice,

                  c'est très bien, un gros merci j'en espérait pas autant.

                  une grosse épine est parti de mon pied, lol
                  merci.
                  1. Bonjour

                    J'ais fait un UserForm et modifier la facture
                    A toi de tester si ca te va

                    http://cjoint.com/?3BewAmlN5XI

                    A+
                    Maurice
                    1. Bonsoir

                      1) Les cellules fusionnées et les macros ne font pas bon ménage ! Les éviter comme la peste ! Mais bon on va faire avec....

                      2) donc en premier lieu fusionner les cellules C16 à J16 du titre Description pour qu'elles soient dans la même configuration que celles du dessous

                      3) Ensuite modifier la partie de la macro associée au bouton de l'userform ainsi :
                      For i = 2 To Sheets("Pièces").Range("B65536").End(xlUp).Row
                      If Trim(Str(Sheets("Pièces").Range("A" & i))) = nuclient Then
                      dlig = Sheets("Facture").Range("C34").End(xlUp).Row + 1
                      If dlig = 17 And Sheets("Facture").Range("C17") <> "" Then MsgBox ("IMPOSSIBLE, plus de ligne disponible")
                          Sheets("Facture").Range("C" & dlig) = Sheets("Pièces").Range("B" & i)
                          Sheets("Facture").Range("K" & dlig) = Sheets("Pièces").Range("D" & i)
                          
                          Exit For
                      End Iff


                      Ne pas oublier de déclarer la variable en début de macro : Dim dlig as long

                      Cdlmnt