[Issue] Récupérer le style

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.
Vandeput
Membre enthOOusiaste
Membre enthOOusiaste
Messages : 409
Inscription : 12 févr. 2007 14:33
Localisation : Bruxelles

[Issue] Récupérer le style

Message par Vandeput »

Bonjour,

Existe-t-il sous Calc une fonction permettant le lire le style d'une cellule ?

Je songe plus particulièrement aux macros XL4 sous Excel, du type LIRE.CELLULE().

En d'autres mots, il y a-t-il moyen de copier le contenu d'une cellule, y compris son style ?

Merci d'avance.
andré
2.2 sous Windows XP
Avatar de l’utilisateur
Machine Head
Membre hOOnoraire
Membre hOOnoraire
Messages : 123
Inscription : 27 déc. 2005 13:08

Message par Machine Head »

Bonjour, j'ai du mal à saisir votre demande.

Un simple copier/coller ne répond pas à votre demande?

SInon la fonction STYLE() peut également vous convenir. N'hésitez pas à regarder dans l'aide de calc pour de plus amples infos au sujet de cette fonction.
Cordialement
JP
Windows 7 64 Bits avec AOo 4.1.2
Avatar de l’utilisateur
vinc-mai
PassiOOnné
PassiOOnné
Messages : 540
Inscription : 22 déc. 2005 14:13
Localisation : Rhône-Alpes

Message par vinc-mai »

Un collage spécial (Ctrl+Maj+V) permet de choisir les éléments à coller (formule, nombre, style...).
(Ooo 2.3 sur windows XP)
OOo 2.3 sur Ubuntu 7.10
Vandeput
Membre enthOOusiaste
Membre enthOOusiaste
Messages : 409
Inscription : 12 févr. 2007 14:33
Localisation : Bruxelles

Message par Vandeput »

Bonjour,

Merci pour vos réponses, mais il me semble que je ne suis pas suffisamment bien expliqué.
Je connais le copier - collage spécial, mais je le voudrais automatique

La formule : =Feuille1.A1 me renvoie le contenu (la valeur) de A1.
Je souhaite également récupérer le style de A1 dans la formule.

Quelque chose du genre : =Feuille1.A1+Style(A1), ce qui, évidement, ne fonctionne pas.
andré
2.2 sous Windows XP
Sylvain
NOOuvel adepte
NOOuvel adepte
Messages : 21
Inscription : 15 févr. 2007 10:55

Message par Sylvain »

Si dans la cellule A1 de la feuille 1, il y a un vrai style d'attribué (titre par exemple),

Code : Tout sélectionner

=Feuille1.A1+Style(A1)
cette fonction peut fonctionner mais en remplacant Style(A1) par Style("Titre")
OOo 2.1 sur Win XP-SP2
Avatar de l’utilisateur
Tom Pouce
Membre hOOnoraire
Membre hOOnoraire
Messages : 102
Inscription : 27 févr. 2007 10:27
Localisation : 69 - département érotique

Message par Tom Pouce »

Salut,

Comme le dit Sylvain, ta syntaxe de STYLE() n'st pas bonne. Regarde l'aide.

Sinon, pas moyen pour le moment de récupérer le style d'une cellule. C'est un truc qui a été demandé depuis 2004:
http://qa.openoffice.org/issues/show_bug.cgi?id=23821

Pas beaucoup de succès, seulement 1 vote (et c'est le mien).

Donc, comme le dit Dude : faut voter !
2.0.4 sous WinXP (obligation de cette version au boulot).
2.1 Novell chez moué sous W2K
Avatar de l’utilisateur
Machine Head
Membre hOOnoraire
Membre hOOnoraire
Messages : 123
Inscription : 27 déc. 2005 13:08

Message par Machine Head »

comme le dit sylvain il te faut créer un style dans Format - Style et Formatage
Ensuite la formule Style("Nom_du_style") fonctionne correctement.
Utilise la documentation offerte avec OOo pour les fonctions, elle te sera d'une grande aide.

Cordialement
Windows 7 64 Bits avec AOo 4.1.2
Vandeput
Membre enthOOusiaste
Membre enthOOusiaste
Messages : 409
Inscription : 12 févr. 2007 14:33
Localisation : Bruxelles

Message par Vandeput »

Rebonjour,

Oui, cela je le connais, mais ce n'est pas cela ce que je veux faire.

Lorsque je crée une liaison avec une autre cellule, je souhaite que non seulement la valeur soit copiée, mais également son style, sans devoir le préciser.

En A1 : "mauvais" et style rouge
En B1 : "bon" et style jaune
En C1 : une quantité variable
En D1 : =SI(C1>10;A1+Style(A1);B1+Style(B1))

Je peux le faire en écrivant la formule :
=SI(C1>10;A1&T(Style("rouge"));B1&T(Style("jaune")))
Je souhaite remplacer "rouge" et "jaune" par A1 et B1

C'est à dire copier le contenu de la cellule et son style.
andré
2.2 sous Windows XP