Macro exel variation cellule dans le temps

Résolu
Tomtom41 -  
 Tomtom41 -
Bonjour,

Je suis novice dans excel et je voudrais faire une macro qui modifie la valeur d'une cellule tous les dixièmes ou centième de seconde en suivant une plage de données.

En détail :
de A1 à A365 j'ai des valeur et je souhaiterai que
B1=A1 pendant 1 dixième de seconde puis que B1=A2 pendant 1 dixième de seconde .... B1= A365.

Merci pour le coup de mains !!


2 réponses

sofienexcel Messages postés 70 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour,

vous trouvez ci joint mon essai

https://www.cjoint.com/c/EFslOtqqNKM
0
Tomtom41
 
Comment puis-je exploiter votre lien ?

Merci
0
baladur13 Messages postés 47805 Date d'inscription   Statut Modérateur Dernière intervention   13 688 > Tomtom41
 
Bonjour
Clic sur le lien pour ouvrir Cijoint puis faire un clic droit sur le lien EFslOtqqNKM_heure-automatique.xlsm enfin enregistrer afin de pouvoir ensuite l'ouvrir sous Excel ou Open-office
0
pijaku Messages postés 12263 Date d'inscription   Statut Modérateur Dernière intervention   2 761 > Tomtom41
 
Bonjour Tomtom, Baladur, Sofienexcel,

@Tomtom : le lien proposé par sofienexcel est fiable. Le classeur proposé peut être téléchargé (procédure expliquée par Baladur13) sans souci.
Il ne réponds pas exactement à votre question (du moins selon mon interprétation personnelle), mais offre des bases de réflexion.
Nous attendons votre retour pour poursuivre.
0
Tomtom41 > pijaku Messages postés 12263 Date d'inscription   Statut Modérateur Dernière intervention  
 
Merci pour les infos et pour le temps passé,
Néanmoins effectivement cela ne répond pas exactement a ma question...
Les jours changent toutes les 10 seconde et je souhaiterai que cela se face tous les dixièmes ou centièmes de seconde.
Merci quand même
0
pijaku Messages postés 12263 Date d'inscription   Statut Modérateur Dernière intervention   2 761
 
Bonjour,

Voici pour toi :
Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)

Sub test()
Dim i As Integer
For i = 1 To 365
   [B1] = Range("A" & i)
    '100 = dixième de seconde
   Sleep 100 'pour avoir la précision au centième, indiquer ici 10 au lieu de 100
   DoEvents
Next i
End Sub

0
Tomtom41
 
Bonjour,
Il me met une erreur sur la fonction sleep ! Je n'arrive pas a appliquer cette macro...
Merci quand même pour le coup de main !
0
pijaku Messages postés 12263 Date d'inscription   Statut Modérateur Dernière intervention   2 761 > Tomtom41
 
  • Tu es en 32 ou 64 bits?
  • La ligne de code :

Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)

est-elle bien placée en entête (tout en haut) de ton module?
  • As tu placé cette procédure dans un module standard?
0
Tomtom41
 
je suis en 64 bits et je fais direct un copier collé de la macro dans un module simple...
Message erreur :
"le code contenu doit etre modifié pour un système 64 bits"
"Vérifier les instructions déclare puis marquer avec attribut PTR safe"
Merci
0
pijaku Messages postés 12263 Date d'inscription   Statut Modérateur Dernière intervention   2 761 > Tomtom41
 
Il faut remplacer la ligne :
Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)


par :
Declare PtrSafe Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)

pour les versions 64 bits...
0
Tomtom41 > pijaku Messages postés 12263 Date d'inscription   Statut Modérateur Dernière intervention  
 
Super !

C'est exactement ce dont j'avais besoin !!!

Merci beaucoup pour le temps passé !

A bientôt !
0