Получение ссылки на лист Excel по имени листа через C # - PullRequest
12 голосов
/ 22 марта 2010

В настоящее время я получаю дескриптор листа Excel с помощью приведенного ниже кода C #:

Excel.Worksheet worksheet = (Excel.Worksheet)sheets.get_Item(15);
//Get the worksheet "SubSignOff" number

Есть ли способ получить его, используя имя листа "SubSignOff"?

1 Ответ

31 голосов
/ 22 марта 2010

Вместо использования коллекции Excel.Workbook.Sheets проще получить доступ к коллекции Excel.Workbook.Worksheets, что позволяет использовать раннее связывание.

В вашем случае это может выглядеть примерно так:

Excel.Application excelApp = new Excel.Application();
excelApp.Visible = true;

Excel.Workbook workbook = excelApp.Workbooks.Open("C:\MyWorkbook.xls",
    Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, 
    Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, 
    Type.Missing, Type.Missing, Type.Missing, Type.Missing);

// The key line:
Excel.Worksheet worksheet = (Excel.Worksheet)workbook.Worksheets["SubSignOff"];

Надеюсь, это поможет ...

...