Ouvrir la dernière facture(+1) en ouvrant le model

  • Initiateur de la discussion Initiateur de la discussion besoin d'aide en excel
  • Date de début Date de début

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 !

B

besoin d'aide en excel

Guest
Bonjour,

J'ai réalisé une facture sous excel avec un peut de VBA afin que chaque facture se voit attribuer un numéro de facture automatiquement. dès que je clic sur un boutton ma facture s'enregistre (dans le même dossier que le model) et je passe à la facture suivante à remplir. J'aimerais lorsque j'ouvre ma facture intitulé "model", que le fichier qui souvre soit automatiquement ma dernière facture enregistrée (+1). Exemple: dans mon dossier facture la dernière facture enregistré s'appel "Facture 123". j'aimerais qu lorsque je clic sur mon fichier "model" que se soit la "Facture 124" qui s'ouvre.

Merci d'avance car je suis complètement perdu.
 
Re : Ouvrir la dernière facture(+1) en ouvrant le model

Bonjour Kjin,

Ca y est presque.
A quoi sert la ligne

"ActiveSheet.Shapes("Enregistrer et incrémenter").Delete 'supprime le bouton sur la copie"

Car il y a une erreur qui apparait lors du debogage.
 
Re : Ouvrir la dernière facture(+1) en ouvrant le model

Bonjour à tous,
Salut Kjin 🙂


Bonjour Kjin,
Ca y est presque.
A quoi sert la ligne
"ActiveSheet.Shapes("Enregistrer et incrémenter").Delete 'supprime le bouton sur la copie"
Car il y a une erreur qui apparait lors du debogage.

Remplace 'Enregistrer et incrémenter' par le nom de ton bouton (clique droit sur ce bouton et voir dans la zone de nom en haut au dessus du A et du 1)
Comme indiqué dans le commentaire : Suppression du bouton avant archivage....

A++ 🙂
A+ à tous
 
Re : Ouvrir la dernière facture(+1) en ouvrant le model

Bonjour,
Bonjour Kjin,
"ActiveSheet.Shapes("Enregistrer et incrémenter").Delete 'supprime le bouton sur la copie"
Car il y a une erreur qui apparait lors du debogage.
Où as tu vu que j'avais écrit cela ?!
Lorsque l'on crée une copie de la facture, on copie également le bouton d'activation de la macro (enregistrer et incrémenter).
Code:
ActiveSheet.Shapes("MonBouton").Delete 'supprime le bouton sur la copie
Permet comme je l'ai écrit de supprimer ce nouton sur la copie
Mais dans l'exemple joint, tu remarqueras que ce bouton s'appelle "MonBouton" !
A+
kjin
 
Re : Ouvrir la dernière facture(+1) en ouvrant le model

Re Bonjour Kjin,

Voici ci-joint mon fichier car j'ai beau batailler rien n'y fait et pourtant il ne manque pas grand chose. Si tu peux y jeter un oeuil ça me rendrait un fier service.

D'avance merci
 

Pièces jointes

Re : Ouvrir la dernière facture(+1) en ouvrant le model

Bonjour le Fil,
Hello kjin,
Hi JC🙂🙂🙂

Voici une macro qui supprimera le bouton peu que le texte affiché commence par "Enregistrer".

Code:
Sub EnregistrerEtIncrémenter()
    Dim RepDest As String
    Application.ScreenUpdating = False
    RepDest = ActiveWorkbook.Path & "\facture " & Range("B10")    'repertoire de destination à adapter "je cherche à le mettre dans "C:\Documents and Settings\invité\Mes documents\Facture\"
    If MsgBox("Voulez vous enregistrer la facture N°" & Range("B10") & " ?", vbQuestion + vbYesNo, "Enregistrement de la facture") = vbNo Then _
       Exit Sub
    'End If 'Je l'ai mi en commentaire car il créait une erreur
    Sheets("Facture").Copy                            'remplace facture par le nom de ta feuille : "ma feuille s'appel Facture"
    [COLOR=red][B]SupprimerBoutonEnregistrer[/B][/COLOR]    'supprime le bouton sur la copie
    ActiveWorkbook.SaveAs RepDest & "\facture" & Range("B10") & ".xlsm"
    ActiveWorkbook.Close
    Range("B9,A14:A24,E14:E24").ClearContents
    Range("B10") = Range("B10") + 1
    Application.ScreenUpdating = True
    Range("B9").Select                              
End Sub
Sub [COLOR=red][B]SupprimerBoutonEnregistrer[/B][/COLOR]()
    Dim shp As Shape
    For Each shp In ActiveSheet.Shapes
        If shp.DrawingObject.Caption Like "Enregistrer*" Then shp.Delete
    Next shp
End Sub

A+ à tous
A+++ Jc
 
Re : Ouvrir la dernière facture(+1) en ouvrant le model

Re, bonjour hasco 🙂
Comme quoi un fichier est toujours bienvenu...
Comme te l'a dit JCGL, que je salue bien bas 🙂, en cliquant droit sur ton bouton, tu aurais vu, à l'extrême gauche de la barre de formule (sous 2007 je ne sais pas) qu'il s'appelle "bouton 2" et que lorsque l'on crée une copie, il devient "bouton 1", d'où le bug; c'est pour cette raison que je l'ai renommé "Monbouton", afin qu'il conserve son nom lors de la copie et éviter ce pb.
Tu peux le renommer à l'envie en prenant soin de modifier la macro en conséquence, évidemment.
Sinon, la solution de Hasco
Fichier joint en xls, excel2000 oblige, mais ça ne devrait pas poser pb.
A+
kjin
 

Pièces jointes

Re : Ouvrir la dernière facture(+1) en ouvrant le model

Bonjour à tous,
Re Kjin 🙂,
Salut Hasco 🙂🙂🙂,

Si les demandeurs lisaient les réponses...
Mais comme cela me permet de croiser l'ami Hasco 😀....

A+++ Ges
A++ Kjin
A+ à tous
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.
Retour