Incrementation

Résolu/Fermé
aeki Messages postés 8 Date d'inscription jeudi 22 mars 2012 Statut Membre Dernière intervention 26 mars 2012 - 26 mars 2012 à 13:55
Pitu Messages postés 1441 Date d'inscription jeudi 3 octobre 2002 Statut Contributeur Dernière intervention 5 janvier 2013 - 26 mars 2012 à 17:13
Bonjour,

Je finalise l'informatisation de mon process retour, pour cela j'ai repris sous excel ma fiche type de RETOUR FOURNISSEUR, seulement j'aimerais que dans ma case N° de RETOUR celui-ci s'incrémente automatiquement à chaque ouverture du fichier.


Le but ne pas avoir à le retaper avant chaque impression,

Merci d'avance pour votre aide!

11 réponses

Pitu Messages postés 1441 Date d'inscription jeudi 3 octobre 2002 Statut Contributeur Dernière intervention 5 janvier 2013 125
26 mars 2012 à 14:01
Bonjour,

A chaque ouverture du fichier, tu es bien certain ?
Tu ne préfèrerais pas que ce soit lorsque tu cliques sur un bouton par exemple ?

Quoi qu'il en soit, les 2 sont possibles.

- A l'ouverture : Rajouter le code suivant dans ton workbook :

Private Sub Workbook_Open()
Range("A1").Value = Range("A1").Value + 1
End Sub


A adapter en remplaçant A1 par la cellule voulue

0
aeki Messages postés 8 Date d'inscription jeudi 22 mars 2012 Statut Membre Dernière intervention 26 mars 2012
26 mars 2012 à 14:36
Le probleme pour moi va etre que je ne sais pas manipuler les MACRO ou meme la VBA.

Alors s'il y a une solution plus basique je suis preneur, sinon il me faudra trouver un tuto pour developper la solution avec une VBA, et/ou créer une macro!
0
Pitu Messages postés 1441 Date d'inscription jeudi 3 octobre 2002 Statut Contributeur Dernière intervention 5 janvier 2013 125
26 mars 2012 à 14:48
Si je te guide de bout en bout, tu ne te sens pas de te lancer en VBA ?
(Très simple pour ton besoin, je t'assure)
0
aeki Messages postés 8 Date d'inscription jeudi 22 mars 2012 Statut Membre Dernière intervention 26 mars 2012
26 mars 2012 à 14:58
ok, je te suis, et j'ouvre une page ecxel!
0

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

Posez votre question
Pitu Messages postés 1441 Date d'inscription jeudi 3 octobre 2002 Statut Contributeur Dernière intervention 5 janvier 2013 125
26 mars 2012 à 15:11
Ok,
Donc tu ouvres ta fiche type (retour fournisseur), et tu tapes [Alt] + [F11]
Une fenêtre Microsoft Visual Basic doit s'ouvrir.
Ok ?

Sur la gauche de cette fenêtre, tu vas trouver une arborescence avec notamment :
VBAProject (nom de ton classeur)
Dessous, tu vas avoir la liste des feuilles de ton classeur, ainsi que "ThisWorkbook"

Toujours ok ?

Alors, tu sélectionnes ThisWorkbook, et dans la fenêtre de droite, tu colles le code suivant :

Private Sub Workbook_Open()
Range("A1").Value = Range("A1").Value + 1
End Sub


Là où j'ai mis A1, tu remplaces juste par la cellule qui correspond au nombre que tu souhaites incrémenter
Toujours ok ?

Un petit [Ctrl] [s] pour sauvegarder, et tu peux fermer la fenêtre VB.

Tu me dis si c'est bon ?
0
aeki Messages postés 8 Date d'inscription jeudi 22 mars 2012 Statut Membre Dernière intervention 26 mars 2012
26 mars 2012 à 15:32
J'ai bien suivi ta procédure, j'ai bien sauvegarder dans le format excel prenant en compte les macros,

Et donc par contre je suis obligé de sauvegarder chaque bons et de réouvrir le dernier que j'aurais préparé pour en faire un nouveau.
0
Pitu Messages postés 1441 Date d'inscription jeudi 3 octobre 2002 Statut Contributeur Dernière intervention 5 janvier 2013 125
26 mars 2012 à 15:43
Exact !

Voila pourquoi je te posais initialement la question de savoir si tu ne préférais pas avoir un bouton qui, lorsque tu cliquerais dessus, incrémenterais automatiquement ton n°.

De toutes façons, à chaque fois que tu saisis un retour, tu es bien obligé d'enregistrer ta fiche, non ?
Si oui, au lieu de coder l'incrément automatique à l'ouverture (le "open" dans workbook_open), on peut le faire sur un clic sur un bouton que l'on ajouterait à ta feuille.

Malheureusement, à ma connaissance on ne peut coder d'action sur l'évènement "après enregistrement".
On pourrait en revanche le coder sur un "before_save".
C'est à dire que l'incrément serait fait juste lorsque tu sauvegardes ton fichier. Mais pendans ta saisie, le n° qui serait affiché ne correspondrait pas à ta fiche, ce serait celui de la fiche précédente.
Je ne suis pas certain d'avoir été très clair ...

Tu essayes de me dire ce que tu souhaiterais comme comportement parmi ceux que j'ai cités ?
0
aeki Messages postés 8 Date d'inscription jeudi 22 mars 2012 Statut Membre Dernière intervention 26 mars 2012
26 mars 2012 à 16:00
Effectivement je vais préférer garder un historique de mes retours sur info (moins de risques d'égarement de mes données).

Par contre l'incrémentation ne se fait pas automatiquement je commence par avoir un avertissement sécurité me spécifiant que que mes macros sont désactivées, je l'active et là, l'incrémentation s'effectue.

Peut-on éviter cette contrainte, (certains des opérateurs risquent de ne pas s'en apercevoir) et la remplacer par une case sur laquelle on clicquera, (et que j'aurais colorer pour faciliter la compréhension du personnel).
0
Pitu Messages postés 1441 Date d'inscription jeudi 3 octobre 2002 Statut Contributeur Dernière intervention 5 janvier 2013 125
26 mars 2012 à 16:14
Pour le message d'avertissement, ce n'est pas si simple que cela.
Jette un oeil là-dessus : https://www.excel-downloads.com/threads/vba-activer-les-macros-automatiquement-sans-la-fenetre-dactivation.81054/

Ensuite, si tu veux créer 1 bouton sur lequel cliquer pour incrémenter ton n°, il faut :
- commencer par ajouter un bouton
- y joindre (copier/coller) le code que je t'ai passé pour l'incrément.

Eventuellement, tu peux me joindre ton fichier via un lien cjoint (www.cjoint.com).

0
aeki Messages postés 8 Date d'inscription jeudi 22 mars 2012 Statut Membre Dernière intervention 26 mars 2012
26 mars 2012 à 16:44
Ok, merci pour ton guidage, je vais m'essayer à la mise en place d'un bouton.
Pourrais tu me dire ou je le trouverais ce bouton?

Un acces restreint à l'édition des bons de retours devrait me permettre de diminuer la possibilité d'erreur de manipulation.

Certains criteres de confidencialité de l'entreprise ne me permette pas de te joindre le fichier, mais je te remercie du temps que tu as pu consacrer au développement de mon process.
0
Pitu Messages postés 1441 Date d'inscription jeudi 3 octobre 2002 Statut Contributeur Dernière intervention 5 janvier 2013 125
26 mars 2012 à 17:13
Pour ajouter un bouton sur une feuille, tu dois déjà faire afficher la barre d'outils "contrôles" : Affichage --> Barre d'outils --> Boite à outils contrôles
Dans cette nouvelle barre d'outils, tu as un icône représentant un bouton : tu cliques dessus et ensuite tu viens dessiner un bouton sur ta feuille excel.

A gauche de cette barre d'outil, tu as un icône représentant une règle, une équerre et un crayon : ce bouton te permet d'activer/de désactiver le mode création
Mode activé : te permet de créer ou modifier des boutons, de leur affecter du code (en double-cliquant dessus)
Mode désactivé : te permet de tester (mode d'utilisation de ta feuille d'excel)


0