Aide pour un débutant

'ai besoin d'aide ^^

Je me suis mis a excel il y a une semaine pour un projet a moi et je suis confronter a un problème dont je ne trouve pas la réponse nul part (Je ne sais même pas si cela est possible).

Voici la formule:

=ARRONDI(((UN!J9+UN!J66)-(DEUX!J11+DEUX!J60+DEUX!Q60+DEUX!U60))/((UN!J9+UN!J66)/UN!J15);0)

Voici mon problème:

Il arrive que ma réponse soit négative. Comment faire pour que quand cette réponse soit négative, celle ci affiche un 0 au lieu de la réponse réel ?

Exemple: la réponse réelle est -120, je veux que sa affiche 0.

la réponse est 210, je veux que sa affiche 210.

la réponse est 0, je veux que sa affiche 0.

Tout aide sera très apprécié et n'oublier pas que je suis un vrai débutant pour vos réponse ^^

Perigord que vous verrai surement souvent dans les temps a venir ^^

Bonjour

=SI(ARRONDI(((UN!J9+UN!J66)-(DEUX!J11+DEUX!J60+DEUX!Q60+DEUX!U60))/((UN!J9+UN!J66)/UN!J15);0) <0;0;=ARRONDI(((UN!J9+UN!J66)-(DEUX!J11+DEUX!J60+DEUX!Q60+DEUX!U60))/((UN!J9+UN!J66)/UN!J15);0) )

Cordialement

Salut Amadéus,

corrige-moi si je fais erreur mais je crois qu'il y a une faute dans ta formule. Probablement une erreur de copier-coller ; un signe égal de trop.

Il me semble que ça devrait plutôt donner ceci non?

=SI(ARRONDI(((UN!J9+UN!J66)-(DEUX!J11+DEUX!J60+DEUX!Q60+DEUX!U60))/((UN!J9+UN!J66)/UN!J15);0) <0;0;ARRONDI(((UN!J9+UN!J66)-(DEUX!J11+DEUX!J60+DEUX!Q60+DEUX!U60))/((UN!J9+UN!J66)/UN!J15);0)) 

Wow, c'est une réponse rapide! Merci.

Une autre question:

Est-til possible de faire en sorte que que cette équation ''Si'' se rapporte a tous les formules de la page ?

Ou je doit la coller a chaque formule que ma feuille comporte (environs 200 formule). ?

Merci encore, votre aide est très apprécié

Bonjour Eric

Bien vu!

Cordialement

Salut Perigord,

oui c'est possible en tirant la formule. Sauf qu'il faut voir si tu ne dois pas figer certaines valeurs. Sans fichier, c'est difficile à dire.

Voici le fichier d'exemple pour commencer :

https://www.excel-pratique.com/~files/doc/SrqDmExemple1.xls

J'ai besoin de vous pour deux choses

1- Comment créé une case servant de menu déroulent (formulaire je crois).

2-Comment faire pour que le choix de se menu déroulent affiche une réponse marqué dans une autre case ?

Merci d'avance ^^

Perigord

Si j'ai bien compris...

https://www.excel-pratique.com/~files/doc/Copy_of_SrqDmExemple1.xls

Remarque que j'ai éliminé, dans la feuille 2, toutes les cellules fusionnées qui sont plutôt difficiles à gérer.

Ensuite, pour le menu déroulant, j'ai utilisé une liste de validation.

Finalement, pour obtenir le résultat voulu, j'ai utilisé la fonction RECHERCHEV.

Merci mille fois. Vous m'avez énormément aidé

A bientôt car c'est certain que je vais revenir vous voir

Toujours moi.

Je joins encore un fichier:

https://www.excel-pratique.com/~files/doc/cFRptExemple1.xls

Ma ou mes questions:

1-comment faire en sorte que cette formule soit fixe:

=ARRONDI(ALEA()*(1-100)+100+UN!$U$9;0)

Je ne veux pas que le résultat change a chaque fois qu'une info est changé sur ma page.

2-En rapport avec la question 1. Si mon aléatoire est fixe, puis-je faire un bouton qui me permet de ''relancer l'aléatoire''? (Qu'il n'y est que se bouton qui change le résultat, rien d'autre).

3-Est il possible de trier les résultats obtenue afin d'y placer un chiffre (de 1 a 20, le plus grand étant 1) et d'afficher le résultat a coté ?

C'est plus facile de comprendre avec mon document sous la mains.

Les sections beige pale doivent être fixer.

La zone ''Généré l'initiative'' doit être le bouton qui génère les 20 résultat aléatoire plus haut.

Les 20 zones jaune moutarde a droite des résultat aléatoire doivent indiqué un chiffre de 1 a 20 (1 étant le plus gros chiffre aléatoire).

Encore une fois, je ne sais pas si c'est possible et si vous avez besoin de plus d'explication, posez vos questions.

Merci encore.

Edit: Question qui n'est pas en rapport avec tout le reste ci haut:

Formule: =RECHERCHEV($O$57;$N$44:$Q$53;J63;FAUX)

Elle ne marche pas. Je cherche a faire:

Rechercher le mot en o57 entre les cases N44 et Q53. Si trouver, indiquer le même nombre qu'en J63.

Selon ce que j'ai compris, voici ton fichier.

Dans cette formule : =ARRONDI(ALEA()*(1-100)+100+UN!$U$9;0), je n'avais pas le lien à la feuille "UN". J'ai donc créer une feuille "UN" avec un nombre en U9.

https://www.excel-pratique.com/~files/doc/Copy_of_cFRptExemple1.xls

Et pour la question dans ton "Edit", essaye ceci : =SI(NB.SI($N$44:$Q$53;O57)>0;J63;"Pas trouvé")

Bonjour Et encore une fois merci de m'avoir répondu EricF, tu m'offre un temps précieux que j'apprécie énormément.

Bon, ta formule pour ma question en édit fonctionne belle et bien. Merci

Mais j'ai un problême avec le bouton ... je suis débutant (je touche a excel depuis moins d'une semaine) et je me perd avec les macros.

J'ai un message d'erreur quand j'ouvre ton document, me disant qu'Excel a désactivé les macros de la page par mesure de sécurité. J'ai cliqué sur aide pour aller lire un peu:

Niveau de sécurité et Signature des macros. A se que j'en ai compris, je dois accepter ta macros, mais je n'arrive pas a le faire.

En se moment, tout fonctionne sauf deux petit truc.

1- Ton bouton ne marche pas (surement a cause de se que j'ai marquer plus haut). De plus, il faut qu'il est 2X23 (Là il a 7X23)

2- La Case ordre qui place les résultat obtenue de 1a5. Est t-il possible Qu'il place les 20 résultat obtenue en ordre de 1 a 20 au lieu de 4x1a5 ?

Merci encore et au plaisir de te lire.

Francis

Edit: Je viens d'essayer de copier le macro dans mon document a moi, cela me copie une simple case, non pas une macro, comment faire pour l'intégrer à mon document ?

Bon allons-y une étape à la fois.

Pour accepter ma macro, tu dois changer le niveau de sécurité.

Appuis sur le "bouton Office" complètement en haut à gauche.

Ensuite, va dans les "options Excel" en bas à droite. Dans "Centre de gestion de la confidentialité", appuis sur "Paramètres du centre de la gestion de la confidentialité".

Finalement, dans "Paramètres des macros", sélectionne "Activer toutes les macros".

Je regarde maintenant les autres questions ...

Première étape réussis, ton bouton fonctionne maintenant

Pour le bouton, il ne remplit pas vraiment des cellules. Il ne fait que les masquer puisqu'il est créé par dessus. Tu peux jouer avec la grandeur autant que tu veux.

Pour y parvenir, tu retournes dans les options Excel ==> bouton office, options Excel...

Dans Standard, tu coches "Afficher l'onglet développeur dans le ruban".

Ensuite, tu vas dans l'onglet développeur et tu sélectionnes "Mode création". Tu pourras alors modifier ton bouton à volonté. Tu pourras même y changer le type et la grandeur de police.

Pour le rang, je ne vois pas d'autres options que de mettre les résultats de tirage sur une seule colonne, établir le rang à partir de là, et copier le tout dans les cellules correspondantes. Nous pouvons automatiser cette tâche. Peut-être que quelqu'un d'autre a une autre solution.

Finalement, pour le code en VBA, je vais tenter de te l'expliquer pour que tu puisses l'adapter.

Le code...

Private Sub CommandButton1_Click()
Dim plage As Range
Dim cell As Range

Set plage = Range("H10:H14, U10:U14, AH10:AH14, AU10:AU14")

For Each cell In plage
    cell = (Int(Rnd(1) * 100) + 1) + Sheets("UN").Range("U9")
Next cell

End Sub

D'abord, j'établis mes variables (Dim plage as Range et Dim cell as Range).

J'ai donc maintenant deux variables, désignées comme étant des cellules avec lesquelles je peux travailler.

J'identifie ma variable "plage" comme étant une plage de cellule en lui indiquant quelle est sa portée.

Set plage = Range("H10:H14, U10:U14, AH10:AH14, AU10:AU14")

Ma boucle qui dit que pour chaque cellule (variable cell) dans ma plage (variable plage),

For Each cell In plage

j'effectue le calcul suivant :

cell = (Int(Rnd(1) * 100) + 1) + Sheets("UN").Range("U9")

Ma cellule (ici H10 qui est la première) est égale à un nombre aléatoire (Rnd(1)) multiplié par 100 pour obtenir un nombre entre 0 et 99 additionné de 1 pour obtenir un nombre entre 1 et 100 additionné de la valeur de la cellule U9 de la feuille UN

Rnd(1) * 100) + 1) + Sheets("UN").Range("U9")

et je termine en m'assurant qu'il s'agit d'un nombre entier.

(Int(Rnd(1) * 100) + 1) + Sheets("UN").Range("U9")

Finalement, je passe à ma cellule suivante :

Next cell

Merci de prendre autant de temps pour moi.

J'ai toujours un problème même si je comprend se que tu m'explique.

En copiant tout dans mon fichier a moi, j'arrive a avoir les nombres aléatoire fixe et l'ordre fonctionne. Cependant, j'ai un problème avec mon bouton. C'est un bouton (Il fait l'animation quand on clique dessus) mais rien ne se passe quand d'appuis sur celui ci.

Je sais, se serait plus facile si je t'envoyais le document au complet, mais votre hébergeur ne prend que les fichier de 100k et moins ...

Autre truc:

For Each cell In plage
    cell = (Int(Rnd(1) * 100) + 1) + Sheets("UN").Range("U9")

Cette forumule n'est bonne que pour l'intiative du joueur 1

l'initiative du joueur deux serais:

    cell = (Int(Rnd(1) * 100) + 1) + Sheets("DEUX").Range("U9")

l'initiative du joueur trois serais:

    cell = (Int(Rnd(1) * 100) + 1) + Sheets("TROIS").Range("U9")

Ainsi de suite...

Pour des fichiers de plus de 100k et moins de 500k, tu peux passer par ICI, sinon, tu peux le zipper.

Tu permet que je t'envoie la totalité de mon document par MP s'il te plais ?

Vas-y!

En attendant, jette un coup d'oeil là-dessus. Il ne manquerait que l'initiative en fonction du joueur.

J'ajusterai ton fichier quand je l'aurai reçu. On se reparle dans 2 heures environ.

https://www.excel-pratique.com/~files/doc/c0KXjCopy_of_cFRptExemple1.xls

Rechercher des sujets similaires à "aide debutant"