DioDocs for Excel
DioDocs for Excel
クロスワークブック数式
機能 > 数式 > クロスワークブック数式

クロスワークブック数式を使用すると、外部ワークブックのデータを参照して計算を行うことができます。例えば、異なる科目の5つのワークブックがある場合は、クロスワークブック数式を使用して、ワークシートに5つの科目のすべてのマークを合計できます。

DioDocs for Excelでは、外部ワークブックのフォルダーやWebパスを使用することで、クロスワークブック数式を使用できます。GetExcelLinkSourcesプロパティを使用して、リンクされたExcelワークブックの名前を取得し、UpdateExcelLinksメソッドを使用して、Excelのリンクのキャッシュを更新できます。

次のコードは、 外部ワークブックのフォルダーのパスを使用してクロスワークブック数式を作成し、Excelのリンクを更新する方法を示します。

C#
コードのコピー
//新しいワークブックを作成します
var workbook = new GrapeCity.Documents.Excel.Workbook();

workbook.Worksheets[0].Range["B1"].Formula = @"='D:\[A.xlsx]Sheet1'!A1";
//外部ワークブックのインスタンスとして新しいワークブックを作成します
var workbook2 = new GrapeCity.Documents.Excel.Workbook();
workbook2.Worksheets[0].Range["A1"].Value = "Hello, World!";
workbook2.Worksheets[0].Range["A2"].Value = "Hello";
//外部ワークブックのデータのキャッシュを更新します
foreach (var item in workbook.GetExcelLinkSources())
{
    workbook.UpdateExcelLink(item, workbook2);
}

//Excelファイルに保存します
workbook.Save("crossworkbookformula.xlsx");

次のコードは、外部ワークブックのWebパスを使用してクロスワークブック数式を作成し、Excelのリンクを更新する方法を示します。

C#
コードのコピー
//新しいワークブックを作成します
var workbook = new GrapeCity.Documents.Excel.Workbook();
workbook.Worksheets[0].Range["B1"].Formula = "= 'http://wwww.grapecity.com/gcexcel/[SourceWorkbook.xlsx]Sheet1'!A1";
//外部ワークブックのインスタンスとして新しいワークブックを作成します
var workbook2 = new GrapeCity.Documents.Excel.Workbook();
workbook2.Worksheets[0].Range["A1"].Value = 100;
//外部ワークブックのデータのキャッシュを更新します
foreach (var item in workbook.GetExcelLinkSources())
{
    workbook.UpdateExcelLink(item, workbook2);
}
//Excelファイルに保存します
workbook.Save("crossworkbookformulawebpath.xlsx");