• Initiateur de la discussion Initiateur de la discussion Merteuil
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

M

Merteuil

Guest
Bonjour à tous,

Voila je vous expose mon problème.

J'ai créé un tableau excel avec des tas de chiffres qui se créent aléatoirement, j'applique des additions ou des soustraction entre eux. J'appuie sur la touche F9 et je calcul et à chaque fois et il me sort des chiffres aléatoire et des résultats.

Mon problème est que je ne veux que des résultats positifs.

Comment je pourrais faire pour que j'appui sur F9, il calcul, et il n’arrête ce calcul que lorsqu'il n'y a que des résultats positifs.

Merci pour vos réponses.
 
Dernière modification par un modérateur:
Re : Fonction ou macro

Pour l'instant j'ai créé pour chaque cellule une mise en forme conditionnelle, qui affiche une texture verte pour les résultats positifs et une rouge pour les résultats négatif et je recalcule en appuyant sur F9. Mais je souhaiterai trouver une fonction qui lui dirais que lorsqu'il y a que des motifs vert ben il arrête le calcul en gros.
Encore merci
 
Re : Fonction ou macro

Merci pierrot93 mais il faudrait je pense que ca fasse comme je l'ai expliqué dans mon 2° post. Il me faudrait peut etre une fonction SI qui lancerai une macro de calcul tant que les cellules de A1 à Z46 soit < 0.
 
Re : Fonction ou macro

Non le fait de mettre en valeur absolue mes opérations ne resoud pas mon problème car un résultat sur une cellule peu avoir 4 opérations qui se renvoient dessus comme exemple. 49 peut être le résultat de 13+36, 34+15, 41+8 et 45+4. Dans ce cas si mes 4 opérations je les met en valeur absolue il y a un problème. car c'est un tableau avec des tas de renvoie dans tous les sens. Pour qu'il soit cohérent il ne faut pas bloquer les négatifs au calcul mais plutôt lancer un calcul qui s'arreterai lorsqu'il n'y aurai que des positifs. Quand je le fait manuellement en appuyant sur F9 je doit avoir environ un calcul avec que des positifs sur 50.
 
Re : Fonction ou macro

Bonjour,

"Il ne faut pas bloquer les négatifs"
Peut on bloquer les positifs ? C'est à dire garder les nombres positifs et ne recalculer que les négatifs jusqu'a obtention de nombres positifs.
Si ce n'est pas le cas et que tous les calculs doivent se répeter, la probabilité que tu ne tombes que sur des nombres positifs est d'autant plus faible que la quantité de nombre aléatoire augmente...

Et si c'est le cas une macro utilisant un petit while devrait te permettre de résoudre ton soucis. Dans l'éventualité ou j'aurais correctement saisis ta problématique bien sur ^^
 
Re : Fonction ou macro

Voila,

Si un des chiffres entourant celui du milieu devient plus grand que celui du milieu il y a un negatif.
Donc je veux faire une fonction qui lancerai un calcul nouveau jusqu'a ce qu'il n'y ai que des positif.
Sur ce petit fichier manque de pot il fait que des positif car il est simplifié 🙁
Imagine un grand tableau avec d'autre cellules cote a cote
Merci de voir
Mais en fait je pense qu'il faudrait creer une macro avec la fonction calculate dans une fonction si.
Qu'est ce t'en pense du style

SI les cellules "" sont negatif
Alors tu calcul
ou tu fait rien

merci
 

Pièces jointes

Re : Fonction ou macro

Prend le deuxieme fichier et abandonne le premier. Je veux appuyer sur la touche F9 pour lancer un calcul, si il y a des nombres negatif il relance le calcul jusqu'a ce qu'il y ai QUE des nombres positif dans tout le tableau. La avec ses 4 operations ca vaux pas le coups mais imagine avec une page complete. J'appuie sur F9 pendant une demi heure avant de tomber QU'AVEC des nombres positif sur tout le tableau. Donc je veux juste creer une sorte de macro qui calcul tant que les nombres sont negatif, c'est tout
Merci
 
Re : Fonction ou macro

Bonjour,

essaye peut être ceci, à placer dans le module de la feuille concernée, click droit sur l'onglet => visualiser le code => et tu colles :
Code:
Option Explicit
Private Sub Worksheet_Calculate()
Dim c As Range
For Each c In Me.UsedRange
    If c.Value < 0 Then  Me.Calculate
Next c
End Sub

il y a peut être lieu d'optimiser la plage concernée(UsedRange), à voir....

@+
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
10
Affichages
1 K
Réponses
1
Affichages
497
Retour