Microsoft.Office.Interop.Excel.SpreadsheetGear не содержит определения активной ячейки и метода расширения для активной ячейки.

Я получаю эту ошибку, когда хочу перейти с AxMicrosoft.Office.Interop.Owc11 на Microsoft.Office.Interop.Excel, с AxSpreadsheet currentSpreadSheet = GetTestSheet на SpreadsheetGear IWorkbook = GetWorkbook

"Microsoft.Office.Interop.Excel.SpreadsheetGear" не содержит определения для "ActiveCell", и отсутствует метод расширения "ActiveCell", принимающий первый аргумент типа "Microsoft.Office.Interop.Excel.SpreadsheetGear" (если вы отсутствует директива использования или ссылка на сборку?)

В ActiveCell есть ошибка

Object searchRange = IWorkbook.ActiveCell.Cells[1, 1];

1 ответ

Кажется, вы хотите использовать SpreadsheetGear, а не Microsoft.Office.Interop.Excel, это разные сборки. SpreadsheetGear - это сторонняя библиотека, а Microsoft.Office.Interop.Excel поставляется с.net. ошибка говорит вам, где проблема:

Microsoft.Office.Interop.Excel.SpreadsheetGear "не содержит определения для" ActiveCell "

ActiveCell является свойством интерфейса IWorksheetWindowInfo в пространстве имен SpreadsheetGear. ActiveCell - это одна активная ячейка в текущем выделении. Я думаю, вы хотите прочитать первую ячейку используемого диапазона в вашем листе. Прежде всего, вы должны сослаться на это:

using SpreadsheetGear;

и код так:

  //this line will create  a new workbook
  IWorkbook workbook = Factory.GetWorkbook();
  IWorksheet worksheet = workbook.ActiveWorksheet;
  //this line represent first cell in used range cells
  SpreadsheetGear.IRange firstCell = worksheet.UsedRange.Cells["A1"];
Другие вопросы по тегам