[Excel 2003] Incrémentation automatique

Fermé
Ikarytos Messages postés 35 Date d'inscription mercredi 18 janvier 2012 Statut Membre Dernière intervention 1 décembre 2019 - Modifié par Ikarytos le 18/01/2012 à 21:38
pilas31 Messages postés 1825 Date d'inscription vendredi 5 septembre 2008 Statut Contributeur Dernière intervention 24 avril 2020 - 23 janv. 2012 à 11:07
Bonjour,

Je souhaiterais savoir si il est possible et si oui comment faire une incrémentation automatique toutes les minutes dans une cellule t'en que le fichier est ouvert et également si il peut enregistrer l'évolution.

Exp.

Dans A1 500€ et toute les minutes ou le fichier est ouvert s'ajoute automatiquement 2€

Grand merci d'avance

A voir également:

6 réponses

Ikarytos Messages postés 35 Date d'inscription mercredi 18 janvier 2012 Statut Membre Dernière intervention 1 décembre 2019 12
20 janv. 2012 à 15:18
S'il n'est pas possible il aurait été bien de le dire. 3 mots suffisent au lieu que l'on attende des jours pour rien.
1
pépé35530 Messages postés 2942 Date d'inscription vendredi 1 mai 2009 Statut Membre Dernière intervention 19 mars 2016 1 382
20 janv. 2012 à 15:30
Bonjour,

petite remarque :

les personnes qui répondent sont des bénévoles et non des professionnels. En conséquence les réponses ne sont pas forcément instantanées et un jour ou deux d'attente ne me semble pas exagéré.
D'autre part, un ton impatient risque de froisser les gens.
Quant-à la question posée, je n'ai pas d'éléments de réponse.

A+

pépé
1
pilas31 Messages postés 1825 Date d'inscription vendredi 5 septembre 2008 Statut Contributeur Dernière intervention 24 avril 2020 643
Modifié par pilas31 le 20/01/2012 à 17:56
Bonjour,

pépé35530 à raison. Je pense que ce n'est pas possible par formules mais il faut utiliser VBA.

Pour cela il y a un fonction qui s'appelle "Ontime" qui permet de déclencher un événement à un moment voulu.

Voila l'idée :

Créer un module macro et insérer la macro suivante qui s'appelle récursivement :

Sub Chrono() 
    Application.OnTime Now + TimeValue("00:01:00"), "Chrono" 
    Sheets("Feuil1").Range("A1").Value = Sheets("Feuil1").Range("A1").Value + 2 
End Sub


Puis pour qu'elle démarre dés l'ouverture du classeur, insérer la macro suivante dans le répertoire "ThisWorkbook"

Private Sub Workbook_Open() 
    Sheets("Feuil1").Range("A1").Value = 498 
    Call Chrono 
End Sub


Cette dernière macro initialise la valeur à 498 puis lance la macro qui fait un premier +2

A+
Cordialement,
1
pilas31 Messages postés 1825 Date d'inscription vendredi 5 septembre 2008 Statut Contributeur Dernière intervention 24 avril 2020 643
23 janv. 2012 à 11:07
Bonjour,

Sub ou fonction indéfinie, c'est curieux car il n'y a rien à faire d'autre.

Il faut insérer la macro Chrono dans un module en faisant <Alt><F11> pour aller dans l'éditeur VBA puis dans le menu "Insertion" la commande "Module". Un dossier "Module1" est créé dans lequel on copie la macro Chrono.


Puis dans le dossier "ThisWorlbook" copier la macro "Workbook_Open"

C'est elle qui s'exécute automatiquement dés l'ouverture du classeur.

A+
1

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

Posez votre question
pépé35530 Messages postés 2942 Date d'inscription vendredi 1 mai 2009 Statut Membre Dernière intervention 19 mars 2016 1 382
20 janv. 2012 à 15:49
A défaut d'un chronomètre, il doit être possible de créer une macro et créer une boucle du style

for i=1 to 1000
next i
A1+2
goto...

Je ne connais pas le VBA mais quelqu'un pourra sans doute t'aider.

A+

pépé
0
Ikarytos Messages postés 35 Date d'inscription mercredi 18 janvier 2012 Statut Membre Dernière intervention 1 décembre 2019 12
Modifié par Ikarytos le 20/01/2012 à 18:47
Grand merci pour vos réponses.

Je reçois le message à l'ouverture du fichier,

Erreur de compilation:
Sub ou fonction non définie


Il y avait autre chose à écrire?


Désolé si j'ai parus impatient
0