VBA Excel, répétition du calcul

Résolu
Okalys Messages postés 20 Statut Membre -  
Okalys Messages postés 20 Statut Membre -
Bonjour,

Je viens de créer une simulation en utilisant la commande aléatoire d'excel. Celle-ci étant très limitée, je souhaiterais réitérer mon calcul 1000 fois, et me mettre tous les résultats obtenus sur une feulle spéciale nommée "résultats" puis ensuite faire la moyenne tout ces résultats.

En résumé :
- mon résultat se trouve dans la cellule H7 de la feuille nommée "calcul"
- je souhaiterais Refaire le calcul 1000 fois (en actualisant la page éventuellement) et mettre ces 1000 résultats sur la page "résultats" de manière verticale (dans la mesure du possible)

Merci pour votre aide

Okalys
Configuration: Windows Vista
Internet Explorer 7.0

4 réponses

  1. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
     
    bonjour

    Avec une petite macro que tu copies dans ta feuille ou dans un module (mode d'emploi)
    Public Sub test_1000()
    Dim lig As Long
    Dim col As Integer
    With Sheets("résultats")
    col = .Cells.SpecialCells(xlCellTypeLastCell).Column + 1
    For lig = 1 To 1000
        Calculate
        .Cells(lig, col) = [H7]
    Next lig
    End With
    End Sub

    Il faut la lancer (alt+F8 puis exécuter) depuis la feuille où tu as ta formule en H7
    Tu obtiens une colonne suivante de 1000 résultats chaque fois que tu la lances.
    0
  2. Okalys Messages postés 20 Statut Membre 4
     
    Bonjour

    Merci pour votre aide, ça marche très bien.

    Par contre j'ai remarqué qu'à chaque renouvellement de l'opération, même après avoir effacé les résultats, les nouveaux résultats s'inscrivaient dans la colonne suivante et ainsi de suite.

    Pour illustré :
    La première fois, mes résultats s'effectuent et se placent dans la colonne A. Ensuite, je change quelques chiffres et je refais toute l'opélration et cette fois-ci, les résultats, à la place de se mettre comme la première fois dans la colonne A, ils se mettent dans la colonne B et ensuite C, et ainsi de suite...

    Avez-vous encore une solution pour résoudre ce petit problème?

    Marlgré tout, je vous remercie pour l'aide que vous m'avez apporter, ça me fait gagner énormément de temps déjà comme ça. Ce ne serait qu'un petit plus.

    Bon après-midi

    Okalys
    0
  3. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
     
    bonjour

    Comme j'utilise la première colonne vide, ce que tu vois est en fait un problème d'excel qui ne considère pas que les effacements rendent la colonne vide.

    Pour ne pas avoir ce souci, il te suffit de sélectionner la colonne A et faire menu édition / supprimer

    ou bien remplacer
    col = .Cells.SpecialCells(xlCellTypeLastCell).Column + 1
    par
    col =  1

    et tu n'as pas besoin d'effacer le résultat écrase.
    0
  4. Okalys Messages postés 20 Statut Membre 4
     
    Bonjour

    Encore merci pour votre aide.

    Bon dimanche

    Okalys
    0