[Résolu] Modèle avec aléatoire mais pas à chaque fois

Discussions à propos du tableur Calc.
Les questions sur les macros doivent être postées dans la section dédiée en dessous.

Modérateur : Vilains modOOs

Règles du forum
Cette section est uniquement dédiée au tableur Calc. Vous ne devez pas poster ici de questions sur les macros mais utiliser la section éponyme.
Egide
NOOuvel adepte
NOOuvel adepte
Messages : 15
Inscription : 30 avr. 2019 13:33

[Résolu] Modèle avec aléatoire mais pas à chaque fois

Message par Egide »

Bonjour !

Je ne savais pas trop comment titrer ce message. Voilà mon petit soucis

Contexte :

Je fais du jeu de rôle et je crée donc des personnages.
J'ai crée un modèle automatique (sous calc) pour qu'à chaque fois que je l'ouvre un nouveau document calc s'ouvre avec tout un tas de chiffre aléatoire (pour les stats etc)
Mon soucis, c'est qu'il est tout à fait possible que mes joueurs s'attache au PNJ.

Ce que je souhaite :

Donc voilà, mon problème c'est que lorsque j'enregistre le document sous format ODS, que les formules en aléatoire ne changent pas à chaque fois que je l'ouvre. (un personnage qui change de stat tout le temps, c'est ennuyeux)

Voilà, merci beaucoup :)

Je vous mets en pièce jointe le document directement, pas le modèle.

Merci beaucoup !

P.S : Je précise bien que je ne parle pas de macro mais bien d'une fonction. La fonction =ALEA.ENTRE.BORNES
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Dernière modification par Lynx le 11 janv. 2020 20:47, modifié 1 fois.
Raison : Balisage
Windows 10, OpenOffice 4.1.7
Avatar de l’utilisateur
Jean-Louis Cadeillan
GourOOu
GourOOu
Messages : 5752
Inscription : 02 janv. 2009 23:56

Re: Modèle avec aléatoire mais pas à chaque fois

Message par Jean-Louis Cadeillan »

Bonjour,
Une solution : tu réunis toutes tes formules de création aléatoire dans une colonne (dans l'exemple joint en Y2:Y15), tu appelles le résultat de ces formules dans les cellules où elles étaient à l'origine (en fond vert dans l'exemple), tu enregistres une petite macro copier/collage spécial option nombre de la plage Y2:Y15 et tu associes cette macro à un bouton (nommé Figer dans l'exemple).
Remarque : Ce travail est à faire sur ton fichier modèle, bien entendu. Autre remarque : ta formule en B38 est fausse.
Cordialement,
Jean-Louis
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
LibO 7.6.6.3 (x64 avec Java 1.8.0_411) et AOO 4.1.15 (avec Java x32 1.8.0_381), Windows 7 Édition Intégrale 64 SP1
Egide
NOOuvel adepte
NOOuvel adepte
Messages : 15
Inscription : 30 avr. 2019 13:33

Re: Modèle avec aléatoire mais pas à chaque fois

Message par Egide »

Désolée... Mais je ne comprends pas du tout é_è

Je suis censée avoir beaucoup de chiffres possibles surtout que mon modèle va changer beaucoup aussi ( là c'est pour les persos rang 1 de classe combattante, mais y a 5 rang et 6 ou 7 classes pour le moment)

S'ajoute à cela que c'est la même chose pour les compétences mais elles ne semblent pas se recalculer à chaque fois que j'ouvre le document

Je dois avouer ne rien connaître DU TOUT aux macros (cela dit, ça a l'air intéressant)

Et pour la B38, oui je sais que ça ne fonctionne pas. Y a encore beaucoup de choses à mettre en place (idéalement il faudrait que ça choisisse la meilleure arme en fonction de ses compétences etc bref y a encore beaucoup, beaucoup de boulot)
Windows 10, OpenOffice 4.1.7
Avatar de l’utilisateur
OOotremer971
ManitOOu
ManitOOu
Messages : 2744
Inscription : 16 avr. 2010 13:31

Re: Modèle avec aléatoire mais pas à chaque fois

Message par OOotremer971 »

Bonjour à tous,

Une éventuelle autre façon de faire (sans macro), consiste à utiliser une cellule intermédiaire dont l'utilité est de servir d'interrupteur pour activer/désactiver la fonction ALEA().

Prérequis : activer le calcul itératif. Menu Outils>>Options>OpenOffice Calc>Calculer
Egide.png
En A1 du fichier exemple, sélectionner Activer ou Désactiver
La formule utilisée en A :

Code : Tout sélectionner

=SI(A1="Activer";ALEA();A2)
Principe à adapter à ton fichier bien entendu.
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
En principe, toujours à jour des dernières versions dites stables
AOO
LibreOffice
Debian 10 et 11
Avatar de l’utilisateur
Jean-Louis Cadeillan
GourOOu
GourOOu
Messages : 5752
Inscription : 02 janv. 2009 23:56

Re: Modèle avec aléatoire mais pas à chaque fois

Message par Jean-Louis Cadeillan »

Egide a écrit :je ne comprends pas du tout
Quand dans une cellule se trouve une formule qui retourne un nombre (c'est le cas de tes formules à base d'ALEA.ENTRE.BORNES()), le fait de copier puis de faire un collage spécial avec uniquement la case Nombre cochée, va remplacer la formule par le nombre en question... du coup la cellule gardera ce nombre inchangé, vu que la formule aura disparu !
Si tu fais cela dans un fichier modèle, le fait de d'ouvrir ce fichier n'ouvre pas le modèle mais un nouveau document identique : si tu fais les copier/coller, tu perdra les formules... mais pas dans le fichier modèle !
Egide a écrit :Je dois avouer ne rien connaître DU TOUT aux macros
Ça tombe bien, la solution que je te propose ne nécessite que d'en connaître très peu : Outils > Macros > Enregistrer une macro : ensuite il suffit de faire les actions voulues : sélectionner la plage de cellules, copier, collage spécial avec seulement Nombre, OK, puis, quand on a fini, cliquer sur Terminer l'enregistrement.Il faut bien sur metre la macro dans ton fichier et pas dans Mes Macros.
Remarque : le fait de regrouper les cellules contenant des formules avec ALEA.ENTRE.BORNES() vient du fait qu'on ne peut pas copier des valeurs de cellules séparées.
Cordialement,
Jean-Louis
LibO 7.6.6.3 (x64 avec Java 1.8.0_411) et AOO 4.1.15 (avec Java x32 1.8.0_381), Windows 7 Édition Intégrale 64 SP1
Egide
NOOuvel adepte
NOOuvel adepte
Messages : 15
Inscription : 30 avr. 2019 13:33

Re: Modèle avec aléatoire mais pas à chaque fois

Message par Egide »

Bonjour à tous,

Une éventuelle autre façon de faire (sans macro), consiste à utiliser une cellule intermédiaire dont l'utilité est de servir d'interrupteur pour activer/désactiver la fonction ALEA().

Prérequis : activer le calcul itératif. Menu Outils>>Options>OpenOffice Calc>Calculer
Merci pour cette aide !

J'ai l'impression que ça se rapproche énormément de ce que je veux faire mais ça ne fonctionne pas correctement. Je suppose donc que je fais mal quelque chose.
Quand dans une cellule se trouve une formule qui retourne un nombre (c'est le cas de tes formules à base d'ALEA.ENTRE.BORNES()), le fait de copier puis de faire un collage spécial avec uniquement la case Nombre cochée, va remplacer la formule par le nombre en question... du coup la cellule gardera ce nombre inchangé, vu que la formule aura disparu !
Si tu fais cela dans un fichier modèle, le fait de d'ouvrir ce fichier n'ouvre pas le modèle mais un nouveau document identique : si tu fais les copier/coller, tu perdra les formules... mais pas dans le fichier modèle !
Egide a écrit:
Je dois avouer ne rien connaître DU TOUT aux macros
Ça tombe bien, la solution que je te propose ne nécessite que d'en connaître très peu : Outils > Macros > Enregistrer une macro : ensuite il suffit de faire les actions voulues : sélectionner la plage de cellules, copier, collage spécial avec seulement Nombre, OK, puis, quand on a fini, cliquer sur Terminer l'enregistrement.Il faut bien sur metre la macro dans ton fichier et pas dans Mes Macros.
Remarque : le fait de regrouper les cellules contenant des formules avec ALEA.ENTRE.BORNES() vient du fait qu'on ne peut pas copier des valeurs de cellules séparées.
Cordialement,
Je vais regarder un peu plus en profondeur, je suis pas mal rouillée sur Calc je fais tout sans connaître le nom des terme du coup c'est un peu complexe. Merci beaucoup pour ton aide aussi :)
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Windows 10, OpenOffice 4.1.7
Avatar de l’utilisateur
OOotremer971
ManitOOu
ManitOOu
Messages : 2744
Inscription : 16 avr. 2010 13:31

Re: Modèle avec aléatoire mais pas à chaque fois

Message par OOotremer971 »

ton fichier test fonctionne bien chez moi (cellule F16) après avoir modifié les valeurs d'itération dans les options :
Egide.png
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
En principe, toujours à jour des dernières versions dites stables
AOO
LibreOffice
Debian 10 et 11
Egide
NOOuvel adepte
NOOuvel adepte
Messages : 15
Inscription : 30 avr. 2019 13:33

Re: Modèle avec aléatoire mais pas à chaque fois

Message par Egide »

Avec la nouvelle itération ça fonctionne, merci beaucoup !

Je vais tester avec le modèle mais je pense que ça devrait fonctionner ^^ et ça me semble plus simple que la version avec des macros que j'ai encore du mal à faire fonctionner et comprendre XD Mais je vais toujours m'y pencher !

Merci beaucoup pour vos aides ! Le sujet est résolu !
Windows 10, OpenOffice 4.1.7
Avatar de l’utilisateur
micmac
RespOOnsable forum
RespOOnsable forum
Messages : 9252
Inscription : 28 août 2010 08:45

Re: Modèle avec aléatoire mais pas à chaque fois

Message par micmac »

Touche Ctrl de Windows = touche cmd⌘ sur Mac
Outils > Options sur Windows = OpenOffice > Préférences sur Mac
Egide
NOOuvel adepte
NOOuvel adepte
Messages : 15
Inscription : 30 avr. 2019 13:33

Re: Modèle avec aléatoire mais pas à chaque fois

Message par Egide »

Bon quand j'essaye de l'appliquer au modèle etc ça me fait ERR:522
ça fonctionne quand c'est "Activer" mais quand je passe en "Désactiver" ça me fait ERR:522
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Windows 10, OpenOffice 4.1.7
Avatar de l’utilisateur
OOotremer971
ManitOOu
ManitOOu
Messages : 2744
Inscription : 16 avr. 2010 13:31

Re: Modèle avec aléatoire mais pas à chaque fois

Message par OOotremer971 »

 Ajout : dans ton fichier sans nom 1 la case itérations n'est pas cochée
Egide.png
 
Il faut modifier l’itération pour le modèle aussi. Ce paramètre est embarqué avec le fichier.
Je ne reproduis pas avec ton fichier test enregistré comme modèle :
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
En principe, toujours à jour des dernières versions dites stables
AOO
LibreOffice
Debian 10 et 11
Egide
NOOuvel adepte
NOOuvel adepte
Messages : 15
Inscription : 30 avr. 2019 13:33

Résolu : Modèle avec aléatoire mais pas à chaque fois

Message par Egide »

Ah merci ! C'est bon ça fonctionne, j'avais oublié en effet x)

Merci beaucoup !
Windows 10, OpenOffice 4.1.7