Excel: incrémenter dernière cellule complétée

Résolu/Fermé
funkyAC Messages postés 16 Date d'inscription dimanche 29 mars 2009 Statut Membre Dernière intervention 5 août 2010 - 29 juil. 2010 à 15:34
funkyAC Messages postés 16 Date d'inscription dimanche 29 mars 2009 Statut Membre Dernière intervention 5 août 2010 - 5 août 2010 à 09:31
Bonjour à tous,

sous excel 2003, j'ai un document de facturation avec 2 boutons qui
commandent chacun une macro: la première copie les champs de la feuille
"facture" vers une autre feuille "historique_factures" et la seconde macro
créé un PDF à partir du fichier excel.

Voici le fichier-exemple: https://www.cjoint.com/?hDpyuIDdbp

Je souhaiterais que lorsque j'ouvre mon document de facturation, le champ
"référence" de la feuille "facture" se remplisse d'office et automatiquement
en fonction de la référence enregistrée précédemment (ex: Facture_002) dans la feuille "Historique_factures" avec un décalage de +1 dans la référence (la nouvelle référence deviendrait alors "Facture_003"). C'est-à-dire que la cellule "référence" doit trouver quelle était la dernière ligne "référence" utilisée dans "Historique_factures" et rajouter un (ex:003 --> 004).

Et également avoir cette référence qui s'affiche par défaut dans la boîte de
dialogue "enregistrer sous" de ma macro qui créé un PDF.

Je ne sais pas comment faire ça.

Merci d'avance pour votre aide !



A voir également:

6 réponses

Salut,
Alors le lplus simple pour ton probleme je pense c'est de faire un petit code VBA qui parcour le feuille "historique facture" jusqu'a trouver la derbière ligne, recupere la referance et la reporte avec un +1 dans les cases que tu veut.
Tu as deja fait du VBA ?
0
funkyAC Messages postés 16 Date d'inscription dimanche 29 mars 2009 Statut Membre Dernière intervention 5 août 2010
30 juil. 2010 à 18:10
Bonsoir,

merci pour ta réponse.

Ce que tu dis est exactement ce que je souhaites.
Alors pour le VBA je veux bien de l'aide parce que je ne suis pas très doué :/


Merci !
0
Le Pingou Messages postés 12042 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 24 avril 2024 1 426
30 juil. 2010 à 23:38
Bonjour,
Ma proposition, voir sur feuille [Facture] : https://www.cjoint.com/?hExL6ZBV7U
0
funkyAC Messages postés 16 Date d'inscription dimanche 29 mars 2009 Statut Membre Dernière intervention 5 août 2010
4 août 2010 à 07:33
Merci beaucoup Le Pingou pour ton aide !
C'est ce que je souhaitais !
0
funkyAC Messages postés 16 Date d'inscription dimanche 29 mars 2009 Statut Membre Dernière intervention 5 août 2010
4 août 2010 à 13:40
Par contre, une fois transféré dans mon document excel,
j'ai bien renommé la cellule "référence" en RéfFact; j'ai ajouté à ma procédure

num = Right(Range("RéfFact"), 3) + 1
Range("RéfFact") = "Facture_" & Format(num, "000")

Et ça ne fonctionne pas.
J'ai du oublier une étape. A propos, à quoi sert la macro :

Sub Macro1()
'
' Macro1 Macro
'

'
Range("B13").Select
Selection.NumberFormat = "@"
Selection.NumberFormat = "000"
End Sub


?
Merci d'avance pour tes éclaircissements Le Pingou

Cordialement
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Le Pingou Messages postés 12042 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 24 avril 2024 1 426
Modifié par Le Pingou le 4/08/2010 à 15:55
Bonjour,
Je suppose que votre nouveau document est vide, est la procédure n'est pas prévue pour créer un numéro mais seulement l'incrémenter.

Vous devez donc introduire le premier numéro à la main.

La macro1 () est un oubli de ma part elle peut être supprimée.


Salutations.
Le Pingou
0
funkyAC Messages postés 16 Date d'inscription dimanche 29 mars 2009 Statut Membre Dernière intervention 5 août 2010
5 août 2010 à 09:31
Bonjour,

d'accord j'ai compris. Une simple étourderie de ma part: en fait c'était tout simple il faut effectivement remplir manuellement la cellule "RéfFact" pour le premier numéro :)


Ca marche nickel. Merci beaucoup de votre aide
0