Retenir un résultat comme la touche "Ans" calculatrice sur Excel

Résolu
Paascal Messages postés 27 Statut Membre -  
Paascal Messages postés 27 Statut Membre -
Bonjour,

Je voudrais savoir comment retenir la valeur précédente d'un calcul avec un nombre aléatoire

Je sais qu'il est possible de faire une combinaison avec Indirect et ligne et colonne

Merci de m'aider

1 réponse

  1. Raymond PENTIER Messages postés 58229 Date d'inscription   Statut Contributeur Dernière intervention   17 494
     
    Bonjour.

    J'ai peur que tu ne sois obligé de passer par une macro, parce que tout résultat aléatoire est immédiatement remplacé par un autre dès que tu effectues la moindre action sur la feuille de calcul : saisie, modification, copie, sauvegarde ...

    Quand tu écris "combinaison avec Indirect et ligne et colonne", tu parles bien d'une formule utilisant les fonctions INDIRECT, LIGNE et COLONNE ?
    Je vois mal comment ces fonctions figeraient un calcul aléatoire ...

    Cordialement.
    0
    1. Paascal Messages postés 27 Statut Membre
       
      Je crois que vous avez mal compris ma question.
      Mon but n'est pas d'additionner tous les nombres aléatoires, c'est plutôt de le garder en mémoire pour le "recalculage" suivant pour lui ajouter une autre valeur aléatoire.

      D'après mes souvenir, la formule ressemblait à ça:

      =INDIRECT(???COLONNE()???LIGNE()-64)???-"la valeur de la cellule d'en haut"

      J'espère que ça va vous aider à mieux me répondre!
      0
      1. Raymond PENTIER Messages postés 58229 Date d'inscription   Statut Contributeur Dernière intervention   17 494 > Paascal Messages postés 27 Statut Membre
         
        Ma réponse reste inchangée ! Je ne peux pas l'améliorer davantage ...
        0
    2. Paascal Messages postés 27 Statut Membre
       
      Bonjour, j'ai réussi se que je voulais faire avec les macros, voici le code:

      Sub brasser_dés()

      'mode de calcul
      Application.Calculation = xlManual

      'choisir des nombres aléatoires et faire la somme

      Range("q1").Select
      ActiveCell.FormulaR1C1 = "=RANDBETWEEN(1,2)"
      Range("r1").Select
      ActiveCell.FormulaR1C1 = "=RANDBETWEEN(1,2)"
      Range("s1").Select
      ActiveCell.FormulaR1C1 = "=RC[-2]+RC[-1]"

      'retenir les valeur
      a = 0
      Range("S11").Select
      If ActiveCell = 1 Then a = 1
      Range("S12").Select
      ActiveCell = a

      b = 0
      Range("S14").Select
      If ActiveCell = 2 Then b = 1
      If ActiveCell = 3 Then b = 1
      Range("S13").Select
      ActiveCell = b

      Range("S14").Select
      ActiveCell.FormulaR1C1 = "=SUM(R[-3]C:R[-1]C)"
      'accumuler les dés et réaction
      Range("S1").Select
      t = ActiveCell
      Range("p12").Select
      ActiveCell = ActiveCell + t
      Range("S15").Select

      ActiveCell.FormulaR1C1 = "=IF(R[-1]C=3,""d'oh"",""youpi!!!"")"
      Calculate

      End Sub

      Il faut mettre sur S11:
      =SI(Q1=R1;1;0)
      0