[Poi][Excel] Taille Cellule.

Le
olive
Bonjour,

J'utilise l'API Poi (HSSF) pour creer un fichier excel :
Y a til moyen que la cellule se redimensionne automatiquement (en largeur)
en fontion de son contenue.

Merci
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
doudou35
Le #635577
Je ne crois pas qu'il existe un moyen de redimensionner automatiquement,
mais on peut bidouiller.

*Soit tu peux forcer le retour à la ligne avec la fonction setWrapText
(HSSFCellStyle.setWrapText(true);)

*Soit tu calcules la longueur de la chaine que tu veux inscrire dans ta
cellule et tu fixes la largeur de la colonne :
HSSFSheet.setColumnWidth((short)colonne,(short)(taille_de_ta_chaine*256));
! attention à la multiplication par 256 très importante !
Je te conseille de rajouter 2 à 5 à ta chaine de caractères pour plus de
sûreté.

olive wrote:
Bonjour,

J'utilise l'API Poi (HSSF) pour creer un fichier excel :
Y a til moyen que la cellule se redimensionne automatiquement (en largeur)
en fontion de son contenue.

Merci...




olive
Le #648728
ARFFFff , merci bcp mais setWrapText effectivement ca passe ala ligne
massije veux ke ca reste sur la meme ligne . Donc faut utiliser ta 2eme
technique mais je les deja utiliser : Le pb est que ca depends de la taille
de la Font qu'il ya a l'interieur dela cellule ,si je prend un Font de 12
camarche plus ,il est trop con il regarde pas la taille de la font : pour
lui la font fais 10 jcrois .


Alors si tu as une autre solution sesera super merci ;)


"doudou35" news:c68shk$e6l$
Je ne crois pas qu'il existe un moyen de redimensionner automatiquement,
mais on peut bidouiller.

*Soit tu peux forcer le retour à la ligne avec la fonction setWrapText
(HSSFCellStyle.setWrapText(true);)

*Soit tu calcules la longueur de la chaine que tu veux inscrire dans ta
cellule et tu fixes la largeur de la colonne :
HSSFSheet.setColumnWidth((short)colonne,(short)(taille_de_ta_chaine*256));
! attention à la multiplication par 256 très importante !
Je te conseille de rajouter 2 à 5 à ta chaine de caractères pour plus de
sûreté.

olive wrote:
Bonjour,

J'utilise l'API Poi (HSSF) pour creer un fichier excel :
Y a til moyen que la cellule se redimensionne automatiquement (en
largeur)


en fontion de son contenue.

Merci...






doudou35
Le #648725
Tu n'as qu'à faire le ratio entre la taille de la Font et la
multiplication que je t'ai indiqué (Fais quelques tests). Par exemple,
au lieu de multiplier par 256 comme je te l'ai dis, tu multiplies 256 et
par ton ratio (par exemple: ratio = taille de ta font / 10)

Cela fera pour une font de 10, 1*256
une font de 12, 1.2*256

Essaye et trouve le meilleur compromis.

olive wrote:
ARFFFff , merci bcp mais setWrapText effectivement ca passe ala ligne
massije veux ke ca reste sur la meme ligne . Donc faut utiliser ta 2eme
technique mais je les deja utiliser : Le pb est que ca depends de la taille
de la Font qu'il ya a l'interieur dela cellule ,si je prend un Font de 12
camarche plus ,il est trop con il regarde pas la taille de la font : pour
lui la font fais 10 jcrois .


Alors si tu as une autre solution sesera super merci ;)


"doudou35" news:c68shk$e6l$

Je ne crois pas qu'il existe un moyen de redimensionner automatiquement,
mais on peut bidouiller.

*Soit tu peux forcer le retour à la ligne avec la fonction setWrapText
(HSSFCellStyle.setWrapText(true);)

*Soit tu calcules la longueur de la chaine que tu veux inscrire dans ta
cellule et tu fixes la largeur de la colonne :
HSSFSheet.setColumnWidth((short)colonne,(short)(taille_de_ta_chaine*256));
! attention à la multiplication par 256 très importante !
Je te conseille de rajouter 2 à 5 à ta chaine de caractères pour plus de
sûreté.

olive wrote:

Bonjour,

J'utilise l'API Poi (HSSF) pour creer un fichier excel :
Y a til moyen que la cellule se redimensionne automatiquement (en



largeur)

en fontion de son contenue.

Merci...











olive
Le #648454
Oui merci c'est ce que je vais faire!
Mais c du bidouillage je penser peutetre qu'il exister une solution propre
;) !

Mais c super je v faire ca merci ++.

"doudou35" news:c6b5to$ngu$
Tu n'as qu'à faire le ratio entre la taille de la Font et la
multiplication que je t'ai indiqué (Fais quelques tests). Par exemple,
au lieu de multiplier par 256 comme je te l'ai dis, tu multiplies 256 et
par ton ratio (par exemple: ratio = taille de ta font / 10)

Cela fera pour une font de 10, 1*256
une font de 12, 1.2*256

Essaye et trouve le meilleur compromis.

olive wrote:
ARFFFff , merci bcp mais setWrapText effectivement ca passe ala ligne
massije veux ke ca reste sur la meme ligne . Donc faut utiliser ta 2eme
technique mais je les deja utiliser : Le pb est que ca depends de la
taille


de la Font qu'il ya a l'interieur dela cellule ,si je prend un Font de
12


camarche plus ,il est trop con il regarde pas la taille de la font :
pour


lui la font fais 10 jcrois .


Alors si tu as une autre solution sesera super merci ;)


"doudou35" news:c68shk$e6l$

Je ne crois pas qu'il existe un moyen de redimensionner automatiquement,
mais on peut bidouiller.

*Soit tu peux forcer le retour à la ligne avec la fonction setWrapText
(HSSFCellStyle.setWrapText(true);)

*Soit tu calcules la longueur de la chaine que tu veux inscrire dans ta
cellule et tu fixes la largeur de la colonne :


HSSFSheet.setColumnWidth((short)colonne,(short)(taille_de_ta_chaine*256));
! attention à la multiplication par 256 très importante !
Je te conseille de rajouter 2 à 5 à ta chaine de caractères pour plus de
sûreté.

olive wrote:

Bonjour,

J'utilise l'API Poi (HSSF) pour creer un fichier excel :
Y a til moyen que la cellule se redimensionne automatiquement (en



largeur)

en fontion de son contenue.

Merci...













Patrick Gras
Le #648221
"olive" news:c68o07$r0f$
Bonjour,

J'utilise l'API Poi (HSSF) pour creer un fichier excel :
Y a til moyen que la cellule se redimensionne automatiquement (en largeur)
en fontion de son contenue.

Merci...


Hello,


J'ai utilisé Poi et pour faire tout ce que je voulais j'ai pris une approche
différente:

J'ai d'abord créé un fichier avec Excel (joli comme je le voulais) puis j'ai
utilisé Poi pour remplir juste les champs variables...

-Patrick

Publicité
Poster une réponse
Anonyme