J'ai une liste de mes DVD (279) dans une feuille de calcul OpenOffice (version 3.3.0) sur mon ordinateur portable Windows 7 et je veux créer une formule pour choisir au hasard un film à regarder (pour les occasions où je ne peux pas faire ma taille esprit). Cela marche:
=RANDBETWEEN(1;279)
Mais tout ce qu'il donne est un nombre que je dois faire défiler vers le haut et vers le bas pour vérifier et il a aussi le nombre total de DVD 'hard coded'. Je souhaite afficher le nom du film (tenu dans la colonne A) de sorte que si, par exemple, le nombre était 277, le nom du film apparaîtrait, dans ce cas «X-Men 2». J'ai supposé que l'ajout de la lettre de colonne à l'avant comme ceci:
=A(RANDBETWEEN(1;279))
Fonctionnerait mais il lève une erreur: # NOM?
Alors, comment puis-je …
Merci.
Pour renvoyer la valeur de la colonne A, ligne R , vous pouvez utiliser =INDIRECT("A"&
R )
Pour compter le nombre de valeurs dans la colonne A, vous pouvez utiliser =COUNTA(A1:A65536)
Donc, pour votre cas, vous pouvez utiliser =INDIRECT("A"&RANDBETWEEN(1;COUNTA(A1:A65536)))
Vous pourriez peut-être créer un bouton de macro qui va être recalculé pour vous. Je ne connais pas assez le langage macro de OpenOffice.org Calc pour y donner plus d'aide.
Je ne suis pas assez familier avec les internes d'OpenOffice pour vous aider avec votre troisième demande, sauf pour dire que tout simplement F9 fonctionne pour moi, aucun changement ou contrôle nécessaire. Quant aux deux autres, cependant:
=INDIRECT(ADDRESS(RANDBETWEEN(1,MATCH("*",$A$1:$A$50000,-1)),1))
Remplacez le 50000
par quelque chose de plus grand si vous avez ou pense que vous aurez plus de 50000 DVD, et remplacer le 1
dans la fonction ADDRESS()
si elle se trouve dans une colonne autre que A
B1
( =INDIRECT("A"&RANDBETWEEN(1;COUNTA(A1:A65536)))
) B1
B1
avec une police attrayante dans une grande taille, choisie afin que les longs titres de films s'adaptent toujours A
et sélectionnez l'élément de menu Format > Column > Hide
Tools > Macros > Record Macros
Stop Recording
Basic Macros Dialog
qui apparaît, entrez un nom tel que "actualiser" dans le champ Macro name
la Macro name
, sélectionnez la feuille de calcul dans la zone Save macro in
, cliquez sur Save
et entrez un nom de module tel que "films", cliquez sur OK
View > Toolbars > Form Controls
Design Mode
est activé Form Design
pour rendre la barre d'outils Création de formulaire visible Form Design
, désactivez le bouton Open in Design Mode
Form Controls
, cliquez sur le bouton Label Field
Control...
dans le menu contextuel General
, puis supprimez le texte dans le champ Label
Events
, cliquez sur le bouton ...
Assign Action
, cliquez sur le bouton Macro...
Macro Selector
, développez les entrées sous votre feuille de calcul dans la zone Library
jusqu'à ce que vous voyiez le nom du module que vous avez utilisé plus tôt (p. Ex. "Films") et cliquez dessus Macro name
de la macro, sélectionnez la macro que vous avez créée plus tôt (p. Ex. "Rafraîchir") OK
, cliquez sur OK
puis fermez la boîte Properties
en cliquant sur le bouton X
dans son coin supérieur droit Form Controls
, désactivez le Design Mode
B1
le nom du film affiché devrait changer Tools > Options > OpenOffice.org Calc > View
et éteindre la Window:
Column Headers and Rows
, Horizontal Scroll Bars
, Vertical Scroll Bars
et Sheet tabs
pour une apparence très propre (vous pourriez avoir besoin Pour revenir sur la prochaine fois que vous créez une nouvelle feuille de calcul vierge) Pour simplifier, numérotez les DVD dans la colonne A et mettez les noms des DVD dans la colonne B (vous pouvez utiliser la formule A2 = A1 + 1
au numéro si vous voulez le rendre encore plus facile).
Supposons n = le nombre de lignes ci-dessus où les DVD commencent, comme si vous avez des étiquettes de colonne.
=INDEX(B:B, RANDBETWEEN(1, MAX(A:A)) + n, 1)