2017-08-23 67 views
0

Excel POIを使用して証明書と簡単なレポートを作成する方法としてExcelシートを使用しています。 私は、シートからTextBoxオブジェクトを取得してテキストを変更したいと思っていましたが、RichTextStringを取得できる間に、テキストを置き換える方法が見つかりませんでした。 私の次の計画は、それぞれのフォントの特性を取得し、新しいテキストで新しいRichTextStringを作成して、フォント特性を設定することです。これはあまりにも難しいことではありませんが、難しいことではありませんが、単純なものが存在する場合、複雑な解決策に進む傾向があります。Apache POIを使用してExcelのテキストボックス内のテキストを更新しますが、書式は保持します

テキストボックス内のテキストを変更して、書式設定とフォントの特徴を保持する簡単な方法はありますか?

答えて

1

これはおそらくあなたを助けるかもしれません。

HSSFFont font = workBook.createFont(); 
font.setFontHeightInPoints((short) 10); 
font.setFontName("Arial"); 
font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD); 


HSSFCellStyle style = workBook.createCellStyle(); 
style.setFont(font); 


HSSFCell myCell = row.createCell(spalte); 
myCell.setCellValue(new HSSFRichTextString("Text"); 
myCell.setCellStyle(style); 
+0

ありがとうございますが、本当に私が後になっているものではありません。これは、フォントを構築して私が慣れているそれを適用するが、私はRichTestStringから既存のFontオブジェクトを抽出し、別のものに適用する(または単にテキストを変更する)必要があります。 RichTextStringには適用(Font)メソッドがありますが、getFontメソッドはFontオブジェクト全体ではなく短いものを返します。 – AndyW

+0

HSSFCell.getCellStyle()を試しましたか? –

+0

この場合、文字列はセルにはなくExcelのテキストボックス(HSSFShapes)にあり、セルにはありません。 – AndyW

関連する問題