Copie de colonne toutes les 2 minutes

Fermé
poker1 - 30 avril 2008 à 18:32
lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 - 20 mai 2008 à 14:42
Bonjour,

J'aimerai copier A1:A150 vers B1:B150 toutes les 2 minutes avec une macro automatiquement.
La valeur B1:B150 doit etre effacé à chaque nouvelle copie.
Le top serait de pouvoir arreter ou demarrer le lancement de cette macro via un bouton sur ma feuille.

Merci de votre aide.

26 réponses

OK pas de problème.
Parcontre quand la macro se lance ça me coupe mes actualisations prévues toutes les minutes.
Il me met " Cette action va annuler une commande d'actualisation de données. Voulez vous continuer?"
Y t'il un moyen d'éviter l'affichage de cette fenetre?
Toutes les minutes je suis obligé de mettre OK

PS: Je n'arrive pas à changer le statut du forum en haut à droite????

MERCI MIKE
0
Mike-31 Messages postés 18188 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 13 mars 2023 5 041
18 mai 2008 à 11:24
Salut,

l'actualisation toutes les minutes sont gérées par quel logiciel ou lien internet, on peut voir si cela est possible de l'intégrer dans la macro

A+
0
Mike-31 Messages postés 18188 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 13 mars 2023 5 041
18 mai 2008 à 14:55
Salut,

En haut de ton post dans rechercher saisie cmoi.s et coches nom d'utilisateur, c'est un post du 11 mai et en fin de discution dandypunk propose un fichier à télécharger qui peut t'intérêsser.

A+
0
Merci Mike...

Je vais tester
Sinon pour contrer j'ai un petit décalage de mon heure PC et heure mondial du coup ça passe. J'ai 20 secondes lol

Merci encore pour tout
PS: Je vais essayer de changer le statut à résolu mais ....

A+
0
Bon je n'ai toujours pas trouvé pour mettre résolu...
Par contre pour me remettre sur la page désiré après le déclenchement de la macro j'ai rajouté ça à la fin de celle ci.

Windows("nom du fichier.xls").Activate
Sheets("nom de la feuiile du fichier en question").Select

@+
0

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

Posez votre question
Mike-31 Messages postés 18188 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 13 mars 2023 5 041
19 mai 2008 à 09:47
Salut,

oui bien sur en ajoutant ce code en fin de macro ça te renvoies sur le dossier en question après que la mise à jour de la macro heuremondiale à terminée. Mais il existe une coupure dû au déplacement entre les fichiers pour ces mises à jour.

Si cela te convient c'est parfait

A+
0
lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 193
19 mai 2008 à 14:32
Bonjour à vous deux,
Je me permet d'intervenir dans votre dicution parce que j'ai déjà eu l'occasion de traiter un sujet similaire (que j'ai d'ailleur résolu) mais qui m'a demandé beaucoup de temps.
Une seule sub peu être employée pour ce problème...
A la place de coller la macro dans
Private Sub Worksheet_Change(ByVal Target As Range)
qui n'est activée que quand il y à un déplacement de sélection,
employer la sub
Private Sub Worksheet_Calculate()
qui est activée quand le CONTENU d'une cellule change.
Espérant avoir pu vous aidez.
A+
0
Mike-31 Messages postés 18188 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 13 mars 2023 5 041
19 mai 2008 à 16:56
Salut lermite,

C'est a peu près ce que je conseillais à Poker à la diference que dans son cas une page de mise a jour s'active toute les minutes et avec la fonction Worksheet_Calculate la macro s'activait à chaque ligne.
Pour y remédier je écrit une petite macro qui décalait d'une seconde l'heure de déclenchement, ce qui lançait la macro q'une fois à chaque mise à jour, et avec les deux cellules horaire, il est possible de programmer le déclenchement.
regardes ma dernière proposition et dis moi ce que tu en pense

A+
0
lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 193 > Mike-31 Messages postés 18188 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 13 mars 2023
19 mai 2008 à 17:16
Salut,
Effectivement, j'avais mis dans Calculate une condition de recalcul avec une variable static
Si la case sensible est A1 par exemple

Private Sub Worksheet_Calculate()
Static Memo as string
    if Memo<> range("A1") then
        'Appel macro
        Memo = range("A1") 
    End if
End Sub

Comme j'ai constater sur le # que (c'est pas A1 mais me souvient plus) la cellule est incrémentée peu ausi faire..
if Memo + 5= range("A1") then '5 = délais
'Faire la macro
Tu dit de voir le fichier mais je ne le vois pas.
0
Mike-31 Messages postés 18188 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 13 mars 2023 5 041 > lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020
19 mai 2008 à 17:43
Le lien était sur le post 22


https://www.cjoint.com/?fmlfkHzB3P

A+
0
lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 193 > Mike-31 Messages postés 18188 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 13 mars 2023
19 mai 2008 à 17:59
Oui, mais c'est pas ta dernière version !
Il n'y a rien dans calculat et comme dit précédamment c'est la seule sub qui agit sans action sur les déplacement ou édition.
EDIT: j'ai retrouvé mon fichier..
dans calculate j'avais mis...
Private Sub Worksheet_Calculate()
'Bien sur a adapter au contexte.
    If Sheets("Feuil1").Cells(1, 1) <> Sheets("Feuil1").Cells(1, 2) Then
        MyMacro
    End If
End Sub


et autre suggestion pour éyiter le changement de feuille, dans un module..
faire avec un For Each et copier les cellules adressées avec le nom de la feuille
0
Mike-31 Messages postés 18188 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 13 mars 2023 5 041 > lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020
19 mai 2008 à 21:07
Salut,
Non j'ai abondonné le code calculate, comme je te l'ai dit plus haut dès que l'on rentrai une valeur cela déclenchai la macro et ne donnai pas le résultat escompté. de plus la macro se déclenchait à chaque changement plusieur fois du à l'enchainement des calculs.
la formule qui a été retenu avec heure modiale offre plusieurs avantage et peut être utilisé dans le milieu financier par exemple. En C1 il est possible d'afficher tous les faiseaux horaires de la planète avec mise automatique à l'heure toute les minutes. En F1 il peut être réglé l'heure de déclenchement en rentrant dans les propriétés de heure mondiale et programmer la mise à l'heure toute les x minutes ce qui offre une énorme possibilité de suivi pour des graphiques.
Le déclenchement est programmé lorsque les cellule C 1 et F1 sont identique l'inconvéniant était que les macros se déclenchaient à répétition et bloquait l'activité des saisies. Pour y rémédier avant le déclenchement des macros j'ajoute 1 seconde à l'heure de déclenchement les macros et tous mes fichiers restent accessibles. dans l'exemple il n'y a qu'une macro pour coller les valeurs de sorte à ne pas modifier l'affichage des mise en forme conditionnelle.

https://www.cjoint.com/?ftuQOpgBcg

A+
0