Vous utilisez un navigateur obsolète. Il se peut que ce site ou d'autres sites Web ne s'affichent pas correctement. Vous devez le mettre à jour ou utiliser un navigateur alternatif.
Bonjour,
j'essaie d'ajouter un compteur sur une feuille correspondant à une facture de telle sorte qu'à chaque ouverture ou mieux qu'à chaque impression, le n° de la facture change et passe à n+1
avez-vous des idées à ce sujet ?
merci à tous
LA
L'idée d'incrémenter un n° de facture à chaque ouverture du fichier, à fortiori à chaque impression, ne me paraît pas judicieuse. Je m'explique :
Si tu es amené à ouvrir plusieurs fois la même facture, ou à l'imprimer plusieurs fois, tu vas te retrouver avec un nombre plus ou moins important de documents identiques avec un n° de commande différent.
La meilleure solution me paraît être la création d'une facture vierge enregistrée en temps que modèle (*.xlt) et dans laquelle tu incrémenterais un N° dans le module Workbook_Open. Ce N° serait bien entendu enregistré dans une cellule masquée de la feuille de facturation ou dans une feuille cachée du classeur.
Je viens de poster une question concernant aussi la numérotation de facture. Bien que différent légèrement, mon problème pourrait trouver sa solution dans la réponse de papou-net... Le hic, c'est que je ne comprend pas tout!
Peux-tu détailler la marche à suivre pour l'incrémentation d'un numéro dans le "WorkBook Open"?
Je viens de poster une question concernant aussi la numérotation de facture. Bien que différent légèrement, mon problème pourrait trouver sa solution dans la réponse de papou-net... Le hic, c'est que je ne comprend pas tout!
Peux-tu détailler la marche à suivre pour l'incrémentation d'un numéro dans le "WorkBook Open"?
Je ne connais pas ton niveau de maîtrise de VBA, aussi je vais détailler comme si tu débutais :
Tu commences par saisir un N° de facture dans une cellule de ta feuille, disons la case A1 par exemple. Tu peux ensuite masquer la colonne A, ou bien mettre la couleur de la police identique à celle du fond de cette cellule (dans les boutons des barres d'outils Excel).
Ensuite, tu lances l'éditeur de macros en appuyant sur ALT + F11.
Dans l'écran qui vient de s'afficher, tu repères la fenêtre Projet - VBAProject (en principe, en haut à gauche).
Tu repères ton classeur dans la liste des projets (ex : VBAProject (Classeur1).
Tu double-cliques sur la ligne ThisWorkbook, et dans la fenêtre principale tu cliques sur la liste déroulante en haut à gauche.
Tu aperçois dans la fenêtre les 2 lignes écrites automatiquement par VBA :
Code:
Private Sub Workbook_Open()
End Sub
Il ne reste plus qu'à entrer au clavier la ligne suivante :
Code:
Private Sub Workbook_Open()
Sheets("Feuil1").Range("A1") = Sheets("Feuil1").Range("A1") + 1
End Sub
Et pis c'est tout !
A chaque ouverture, la cellule A1 augmentera automatiquement d'une unité.
Celà suppose, bien entendu, que tu écrives au départ une valeur numérique dans A1. On peut envisager des données alphanumériques, ça complique légèrement la programmation mais ça reste facilement réalisable.
Ce site utilise des cookies pour personnaliser le contenu, adapter votre expérience et vous garder connecté si vous vous enregistrez.
En continuant à utiliser ce site, vous consentez à notre utilisation de cookies.