Calc : comment italiciser du texte dans une formule

Bonjour,

Je souhaite afficher dans une colonne (pour faire simple : la colonne C), le texte qui apparaît dans la colonne A (par exemple : “aaa”), concaténé avec celui de la colonne B (par exemple : “bbb”), mais ce dernier en italiques (donc pour résultat “aaabbb”).

Je n’ai pas trouvé de fonction ou opérateur pour ce faire… Y en a-t-il ?

Merci !

Il faut utiliser la fonction STYLE
Exemple
=A1&A2+STYLE(“Monsttyle”;:wink:

Merci pour la réponse. Je ne connaissais pas la fonction STYLE, mais autant que je puisse voir, elle s’applique à TOUTE la cellule dans laquelle il est mentionné ; donc, dans la solution que vous proposez, on verra l’ensemble (valeur de A1 concaténée avec valeur de A2) en italiques. Or, ce que je voudrais obtenir c’est la concaténation de la valeur de A1 (style inchangé) avec la valeur de A2, cette dernière mise en italique.

Pas de chance.

Les paramètres des polices dans les céllules s’appliquent à la céllule entière et pas aux caractères individuels du texte. D’ailleurs (et par conséquent), il n’existe pas de style de caractère dans Calc.

Bonjour

Puisque @Pioulo “remonte” cette question avec un contournement intéressant, j’en profite pour préciser que @ohallot répond exactement à la question qui porte sur le texte affiché comme résultat d’une formule.

C’est implicite dans sa réponse mais s’il s’agissait d’une cellule contenant un texte le mélange des polices et attributs est naturellement possible…

Cordialement

Merci pour le complément d’information !

Cordialement,
M.

Bonjour,

On peut détourner l’usage de certaines polices à cette fin. Par exemple la police DejaVu Sans possède les codes 120354 à 120379 en décimal (1D622 à 1D63B en hexa) des caractères italiques minuscules, les codes 120406 à 120431 en décimal (1D656 à 1D66F en hexa) des caractères gras italiques minuscules (il y a d’autres plages aussi pour les majuscules italiques ou gras italiques).
Pour reprendre ton exemple, si tu as aaa en A1 et bbb en B1, tu peux saisir en C1 : =A1&CONCAT(UNICAR(UNICODE(STXT(B1;LIGNE(A1:A3);1))+120257)) en validation matricielle (Ctrl+Maj+Entrée), ce qui te donnera aaa𝘣𝘣𝘣.

120257 = 120354-97, c’est -à-dire le décalage de code entre a et a.
Le même décalage existe entre toutes les minuscules droites et son équivalent italique.

On pourrait aussi adapter LIGNE(A1:A3) pour que cette portion de formule s’adapte au nombre de caractères de B1. Enfin, on pourrait faire un test, à partir d’un style Italique en utilisant l’extension CountStyle qui possède une fonction STYLE.CELLULE().

Cordialement,

Bonjour Pioulo,

Merci ! je vais étudier la réponse…

Cordialement,
M.