NPOIを使ってExcelのテンプレートファイルに値を設定しています。
あらかじめ設定したセルを参照しているところがあるのですが、反映されません。
もう一度同じ値を手で入力すると、反映されました。反映されるにはどのようにソースを変えればいいでしょうか?
1.まずテンプレートのExcelの「Sheet1」の「A1」セルに
「=Sheet2!$A$1/1000」
と入っています。
2.プログラム上から以下のようにして、「Sheet2」の「A1」セルに値を設定します。
``` IWorkbook wb = WorkbookFactory.Create(ExcelFilePath);
ISheet ws = wb.GetSheet("Sheet2");
IRow row = null;
ICell cell = null;
row = ws.GetRow(0);
cell = row.GetCell(0) ?? row.CreateCell(0);
cell.SetCellValue(20000);
using (System.IO.FileStream f = new System.IO.FileStream(ExcelFilePath, System.IO.FileMode.OpenOrCreate, System.IO.FileAccess.Write))
{
wb.Write(f);
f.Close();
}
コード
3. エクセルファイルを開いて、「Sheet2」の「A1」セルには「20000」と設定 されていますが、「Sheet1」の「A1」セルを見ても0のままです。 手動で、「Sheet2」の「A1」セルに「20000」と設定しなおすと、 「Sheet1」の「A1」セルが、「20」と反映されました。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/10/10 01:51
2020/10/10 02:26