[Résolu][Java] Format texte dans une cellule

Discussions et questions sur tout ce qui concerne la programmation tous langages et tous modules confondus.

Modérateur : Vilains modOOs

Règles du forum
:alerte: Balisage obligatoire dans cette section !
Aidez-nous à vous aider au mieux en balisant correctement votre question : reportez-vous sur les règles de cette section avant de poster !
tomatoes
Membre OOrganisé
Membre OOrganisé
Messages : 88
Inscription : 31 mai 2010 11:58

[Résolu][Java] Format texte dans une cellule

Message par tomatoes »


La modération vous a écrit: Pour la bonne tenue de ce forum, veillez à respecter la mise en forme des balises (première lettre en majuscule puis le reste en minuscules, le tout entre crochets).

Bonjour

J'ai des valeurs 01, 02, 03 etc... dans la colonne d'un tableau mais j'aimerai que cela soit reconnu en format texte sous le calc

j'utilise xPropSet.setPropertyValue( "NumberFormat", com.sun.star.util.NumberFormat.TEXT );

mais cela est reconnu toujours comme un format "nombre" si je fais un clic droit sur la cellule et menu "formater les cellules"
D'ailleurs si je remplace ces valeurs par janvier, février, mars... c'est toujours reconnu comme catégorie "nombre" format "standard"

Pouvez vous m'aider svp

En vous remerciant par avance

Bien cordialement
Dernière modification par tomatoes le 22 nov. 2023 06:10, modifié 2 fois.
Libre office 24.2.6 sous Windows 10
Avatar de l’utilisateur
tintin
GourOOu
GourOOu
Messages : 9916
Inscription : 18 juil. 2008 15:29
Localisation : F-Oise + F-Savoie

Re: [JAVA] Format texte dans une cellule

Message par tintin »

Bonjour,

N'oubliez pas de corriger la balise comme demandé.
.
Dans votre signature il y a écrit :LibO 7.2.5.2
Votre signature fait mention d'une version de LibreOffice qui n'est plus maintenue.
Si c'est une obligation ou un choix mentionnez-le par Obligation de version dans votre signature afin de ne pas être relancé.

Afin de profiter des dernières améliorations, il est fortement recommandé d'être à jour de la dernière version officielle stable

Accès direct à votre signature pour la corriger.

Cordialement
AOO 4.1.15 et LibO 24.8.7.2 / macOS Intel 13.7.6 Ventura
Adoptium-temurinJDK-jre_1.8.0_452 / Firefox/Safari/Thunderbird /Time Machine+cloneCCC
Tutoriels du forum pour macOS
Pour sauvegarder vos documents c'est ceinture ET bretelles
Avatar de l’utilisateur
Dude
IdOOle de la suite
IdOOle de la suite
Messages : 25977
Inscription : 03 mars 2006 07:45
Localisation : 127.0.0.1

Re: [Java] Format texte dans une cellule

Message par Dude »

Salut,

Tu formates une cellule en texte et tu regardes avec XRay la valeur de la propriété NumberFormat.
Celle-ci dépend de l'environnement local et doit être interrogée par getStandardFormat(*)


(*) https://wiki.openoffice.org/wiki/Docume ... er_Formats
tomatoes
Membre OOrganisé
Membre OOrganisé
Messages : 88
Inscription : 31 mai 2010 11:58

Re: [Java] Format texte dans une cellule

Message par tomatoes »

Bonjour,

Nickel grace à votre explication et au lien j'ai compris comment cela marche

Merci beaucoup

Bonne journée
Libre office 24.2.6 sous Windows 10
Avatar de l’utilisateur
Oukcha
RespOOnsable modération
RespOOnsable modération
Messages : 4260
Inscription : 06 oct. 2008 08:03

Re: [Résolu][Java] Format texte dans une cellule

Message par Oukcha »

Bonjour,

Vous êtes sur un forum d'entraide, merci de partager la solution à ce problème.

Cordialement
                                        
Pour tout savoir sur le fonctionnement de ce forum :arrow: À lire avant tout ! Image
tomatoes
Membre OOrganisé
Membre OOrganisé
Messages : 88
Inscription : 31 mai 2010 11:58

Re: [Résolu][Java] Format texte dans une cellule

Message par tomatoes »

Voici ma solution

Code : Tout sélectionner


XSpreadsheetDocument _spreadsheetDocument;

com.sun.star.util.XNumberFormatsSupplier xNumberFormatsSupplier = 
(com.sun.star.util.XNumberFormatsSupplier) UnoRuntime.queryInterface( com.sun.star.util.XNumberFormatsSupplier.class, _spreadsheetDocument );

// Get the number formats from the supplier
com.sun.star.util.XNumberFormats xNumberFormats = xNumberFormatsSupplier.getNumberFormats();

// Query the XNumberFormatTypes interface
com.sun.star.util.XNumberFormatTypes xNumberFormatTypes = (com.sun.star.util.XNumberFormatTypes) UnoRuntime
.queryInterface( com.sun.star.util.XNumberFormatTypes.class, xNumberFormats );

com.sun.star.lang.Locale aLocale = new com.sun.star.lang.Locale();

int nCurrencyKey = xNumberFormatTypes.getStandardFormat( com.sun.star.util.NumberFormat.TEXT, aLocale );

xPropSet.setPropertyValue( "NumberFormat", (short) nCurrencyKey );

Libre office 24.2.6 sous Windows 10