3

私はExcel2010用のVIsualC#でアドインを作成しています。このアドインは、サービスからいくつかのデータを取得し、その結果を特定のスプレッドシートのセルに書き込みます。ただし、セルに値を入力して表示するのは時間がかかるため、Excelで表示したくありません。そこで、次のコードを試しました。

ExcelApp = (Excel.Application)System.Runtime.InteropServices.Marshal.GetActiveObject("Excel.Application");
ExcelApp.ScreenUpdating = false;
GetFolderTreeRecursive(FolderTree);
ExcelApp.ScreenUpdating = true;

GetFolderTreeRecursive基本的に、Webサービス呼び出しを処理し、次のように応答値をExcelセルに書き込みます。

Globals.TestCases.Cells[FolderTreeRowIndex, FolderTreeColumnIndex].Value2 = CurrentFolder.recordid;

残念ながら、Excelはまだ書き込まれているすべてのセルを表示します。私は何が間違っているのですか?

4

1 に答える 1

0

間違った Excel アプリケーション オブジェクトを参照しました。次のステートメントを使用すると、誤って実装した新しい Excel アプリケーションではなく、現在の Excel アプリケーションが返されます。

ExcelApp = Globals.ThisWorkbook.ThisApplication;

于 2012-06-12T18:49:50.410 に答える