une question de base ?
- existe-t-il un moyen simple pour remplacer toutes les formules et toutes les références dans une feuille calc par les valeurs numériques resultantes? actuellement je sélectionne toute la feuille, je fais copier - collage spécial dans une nouvelle feuille et je coche juste chaine et nombre. mais c'est long et pour les grandes feuilles où il y a plusieurs centaines de formules et références c'est très lourd.
Tu peux toujours automatiser la tâche que tu décris ci-dessus en créant une macro à l'aide de l'enregistreur (A condition - à mon avis - que tu fasses le collage spécial dans une autre feuille du même classeur). J'ai fait l'essai ... mais seulement avec quelques formules sur une page.
Bonsoir,

Désolé, je réponds avec un peu de retard, mais je me suis posé la même question.

Habitué d'Excel, j'apprécie particulièrement le bouton "coller valeur" que l'on peut ajouter dans la barre d'outil. Je m'étais donc recréé la même fonction sous OOo 2.0, en utilisant la même technique que Tony : enregistrement d'une macro, et affectation de cette macro à un bouton dans la barre d'outil.

Pour info, le code de la macro est en fin de message... mais cela se fait très facilement à l'aide de l'enregistreur.

Sinon, cela fonctionne très bien sur une même feuille : en pratique, il suffit de sélectionner la zone à modifier, faire Copier (Ctrl C) puis de cliquer sur le bouton associé à la macro. Si l'on n'a pas déplacé le curseur entre la copie et le collage, on remplace toute la zone avec des formules par simplement les résultats (sans perdre la mise en forme et en conservant la précision des résultats) ==> très pratique pour "geler" une zone d'un tableur.

EC

======================================
sub Coller_valeur
rem ----------------------------------------------------------------------
rem define variables
dim document   as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
document   = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")

rem ----------------------------------------------------------------------
dim args1(5) as new com.sun.star.beans.PropertyValue
args1(0).Name = "Flags"
args1(0).Value = "V"
args1(1).Name = "FormulaCommand"
args1(1).Value = 0
args1(2).Name = "SkipEmptyCells"
args1(2).Value = false
args1(3).Name = "Transpose"
args1(3).Value = false
args1(4).Name = "AsLink"
args1(4).Value = false
args1(5).Name = "MoveMode"
args1(5).Value = 4

dispatcher.executeDispatch(document, ".uno:InsertContents", "", 0, args1())


end sub

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Répondre à