Arriere plan, pile fifo

  • Initiateur de la discussion Yo de Chato
  • Date de début
Y

Yo de Chato

Guest
Salut

J'aurais deux petites questions.
La premiere : est il possible de faire fonctionner excel + macro en arriere plan. Je lance une macro a chaque nouveau calcul d'une feuille. Pour que ma macro fonctionne il faut que ma feuille soit recalculée, ce qui ne marche pas quand j'ai une autre application en premier plan.

Deuxieme question : je vais une macro qui a chaque changement de ma feuille copie une plage (A5:C100)
vers la ligne d'en dessous (A4:C99). Pour cela j'utilise un copier coller et la commande application.screenupdating=false. Malheursement je vois le clignottement du copier coller et je n'en veux pas. Je me demande donc si il existe une fonction du type pile FIFO.

Merci.

Yo de Chato
 

ERIC S

XLDnaute Barbatruc
Bonjour

pour ton second point je suis surpris, application.screenupdating fonctionne plutôt bien

pour la première, peux-tu être plus précis: pourquoi Excel recalcule alors qu'il n'est pas actif, envoies-tu des infos au fichier et attends tu des résultats dépendant de ta macro

Un bout de code pour les 2 questions serait bienvenu.

A+
 
Y

Yo de Chato

Guest
Salut Eric S

Voila un petit complaiment : J'aquere via lien dde des données depuis une autre application. Ces données sont ecrites dans une ligne. Afin d'avoir une courbe de tendance des données aquises je copie les valeurs de la ligne de donnée dans une ligne juste avant (ligne historique). A chaque fois que les données évoluent je décalle vers le haut mes données. Avec toutes mes données historisées je crée une courbe de tendance qui se rafraichis continuellement. Comme je te l'ai dis a chaque fois que la macro s'éxecute j'ai un petit clignottement que je voudrais supprimer.

Voila le code de ma macro. Afin de te mettre en conditons réélles creer une feuille qui s'appele 'Aquisitons' et creer une cellule (en A1) qui est = a la valeur d'une cellule d'une autre feuille (B1) +1. Mets toi sur la cellule B1 et modifie la. Tu veras s'executer ma macro a chaque fois un petit clignottement tres desagreable.

Private Sub Worksheet_Calculate()

Dim OD As String
OD = ActiveSheet.Name

Application.ScreenUpdating = False

Sheets('Aquisitions').Select
Range('A6:S2125').Select
Selection.Copy
Range('A5').Select
ActiveSheet.PasteSpecial Format:=3, Link:=1, DisplayAsIcon:=False, _
IconFileName:=False
Sheets('Aquisitions').Select
Range('A2127:S2127').Select
Selection.Copy
Range('A2125').Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False


Sheets(OD).Activate

Application.ScreenUpdating = True

End Sub

Désolé pour la mise en page et merci de ton aide.

Yo
 
Y

Yo de Chato

Guest
Salut

Tu ne vois pas de clignottement ? Donc :
- ou j'ai des yeux bioniques
- ou je ne comprends pas quelquechose

Voila le fichier.

Il est tres allégé. Pour le remettre correctement il faut inserer le bon nombre de ligne sur la feuille aquisitions (la ligne 10 doit etre en 2125).

Si tu sais faire tourner ma macro quand excel est en arriere plan ça m'interesse aussi.

Merci de ton aide.

Yo [file name=Tendance.zip size=27633]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Tendance.zip[/file]
 

Pièces jointes

  • Tendance.zip
    27 KB · Affichages: 38
  • Tendance.zip
    27 KB · Affichages: 32
  • Tendance.zip
    27 KB · Affichages: 35

ERIC S

XLDnaute Barbatruc
Bonjour

je n'arrive pas à utiliser ton fichier

1er message= liaisons

ensuite à l'ouverture une ligne disparaît les lignes remontent de 1

et comme après rien ne bouge, je peux toujours insérer des lignes.....

A+
 

Discussions similaires