Animation

Résolu
Dandy_danbe Messages postés 109 Date d'inscription   Statut Membre Dernière intervention   -  
cs_Le Pivert Messages postés 8437 Statut Contributeur -
Bonjour,

J'aimerai savoir si il est possible de mettre une animation dans une cellule lorsque une autre cellule contien le nombre 25,
par exemple (h5) = 25 (n5)devient BINGO mais change de couleur toute les seconde
merci d' avance

2 réponses

  1. Utilisateur anonyme
     
    On peut faire changer la couleur de la case mais je ne pense pas qu'on puisse la faire changer de couleur toute les secondes
    0
    1. Dandy_danbe Messages postés 109 Date d'inscription   Statut Membre Dernière intervention  
       
      Bonjour;
      je sais que l' on peut change la couleur avec condition,
      mais moi je voudrai un macro qui la change en fonction de!!!
      0
  2. cs_Le Pivert Messages postés 8437 Statut Contributeur 730
     
    Bonjour,

    C'est possible en vba:

    Faire Alt F11 pour accéder à l'éditeur
    Sélectionner la feuille concernée en haut à gauche et mettre ce code:

    Option Explicit
    'ce declenche au double clic
    Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    If Not Application.Intersect(Target, Range("H5")) Is Nothing Then
    If Target.Value = 25 Then
    Range("N5").Select
    Range("N5").Value = "Bingo"
    InitFlash
    End If
    End If
    End Sub
    


    Ensuite aller dans le ruban et Insertion, Module et mettre ce code:

    Option Explicit
    Sub Flash()
    Static i
       i = i + 1
      'le clignotement
      If ActiveCell.Interior.ColorIndex = 6 Then
        ActiveCell.Interior.ColorIndex = 3 'fond rouge
        ActiveCell.Font.ColorIndex = 6 'caractères en jaune
      Else
        ActiveCell.Interior.ColorIndex = 6 'fond jaune
        ActiveCell.Font.ColorIndex = 3 'caractères en rouge
      End If
      
      'tant que le nombre de clignotements choisi n'est pas atteint
      '(ici 5) on continue
      If i <= 5 Then
        Application.OnTime Now + TimeValue("00:00:01"), "Flash"
      Else
        'sinon, on revient à la mise ne forme par défaut d'Excel
        'et on arrête tout
        ActiveCell.Interior.ColorIndex = xlNone 'fond incolore
        ActiveCell.Font.ColorIndex = 1 'caractères en noir
        i = 0
      End If
    End Sub
    Sub InitFlash()
      'lance un clignotement toutes les secondes
      Application.OnTime Now + TimeValue("00:00:01"), "Flash"
    End Sub
    


    C'est opérationnel, aller sur la feuille pour les essais!
    0
    1. Dandy_danbe Messages postés 109 Date d'inscription   Statut Membre Dernière intervention  
       
      bonsoir;
      j e ne comprend pas tres bien, pour le page que ou cela dois ce produire, nom de la page "Treking pourrais avoir plus explication pour cree la macro
      merci d' avance
      0
    2. cs_Le Pivert Messages postés 8437 Statut Contributeur 730
       
      Quand on est dans l'éditeur les feuilles sont en haut à gauche, il suffit de double cliquer sur la feuille, c'est simple. Ensuite il suffit de mettre le code dans le module de la feuille.
      C'est pourtant pas la 1ère fois que vous utilisez l'éditeur d'après les post que vous avez posés!
      0
    3. Dandy_danbe Messages postés 109 Date d'inscription   Statut Membre Dernière intervention   > cs_Le Pivert Messages postés 8437 Statut Contributeur
       
      en fait lorsque je veut automatiser une action je le fait enregitre une macro et que j' arrête quant j' ai termine
      je corrige ensuite avec les reponce que je recois du forum
      par contre je vous rmerci de votre devoument
      0
    4. Dandy_danbe Messages postés 109 Date d'inscription   Statut Membre Dernière intervention   > cs_Le Pivert Messages postés 8437 Statut Contributeur
       
      Re bonsoir;
      ca mache; mais pourrait on en accelereer le procesus;
      0
    5. cs_Le Pivert Messages postés 8437 Statut Contributeur 730
       
      Tout est expliqué dans les commentaires du module. C'est toutes les secondes, mais par contre on peut augmenter la durée, c'est indiqué

       'tant que le nombre de clignotements choisi n'est pas atteint
        '(ici 5) on continue
        If i <= 5 Then


      il suffit d'augmenter le chiffre!

      @+
      0