Aspose.Cells 24.8.0(.Net)を使用。
sample.png (7.0 KB)
前提条件
・添付画像のようなSheet1とSheet2があるExcelファイル用意
・Sheet2のB2セルにSheet1のB2セルを参照するような数式を設定
・Sheet1のB2セルを名前定義
・Excelファイルの計算方法の設定は自動とする
実行内容
下記のような実装でSheet1のB2セルに「test」をセットしましたが、
Sheet1のB2セルには「test」がセットされますが、
Sheet2のB2セルには「test」がセットされず、「0」がセットされた状態となります。
Range[] namedRanges = xlBook.Worksheets.GetNamedRanges();
namedRanges[0] = “test”;
xlBook.Save(“test.xlsx”);
確認内容
上記の場合に、Sheet2のB2セルに「test」がセットされるようにしたいのですが、
どのような対応が可能でしょうか。
@appyukai,
スクリーンショットと詳細をありがとうございます。
Excelファイルを保存する前に、Workbook.CalculateFormulaメソッドを呼び出してください。コードセグメントに次の行を追加してください。
....
xlBook.CalculateFormula();
xlBook.Save("test.xlsx");
それでも問題が解決しない場合は、テンプレートExcelファイルをzip形式で圧縮し、添付してサンプルコードスニペットを共有してください。確認の上、すぐにサポートさせていただきます。
@amjad.sahi
早急なご回答、誠にありがとうございます。
頂いた内容で試してみます。
申し訳ございませんが、長期休暇を挟むため、
実施結果のご報告は少々お時間いただけますと幸いです。
以上、よろしくお願いいたします。
@appyukai,
どういたしまして。お時間のある時にどうぞ。Workbook.CalculateFormulaメソッドをお試しください。このコード行で問題が解決することを願っています。それでも問題が解決しない場合は、サンプルのExcelファイルとコードスニペットをご提供ください。確認の上、できるだけ早くサポートさせていただきます。