У меня есть файл Excel с 5 рабочими листами, и я хочу с кодом c# открыть его и когда он открыт, я хочу, чтобы лист номер 3 был активирован.
Как я могу сделать это?
]Например:[
] [ using Excel;
Excel.Application excelApp = new Excel.ApplicationClass();
// if you want to make excel visible to user, set this property to true, false by default
excelApp.Visible = true;
// open an existing workbook
string workbookPath = "c:/SomeWorkBook.xls";
Excel.Workbook excelWorkbook = excelApp.Workbooks.Open(workbookPath,
0, false, 5, "", "", false, Excel.XlPlatform.xlWindows, "",
true, false, 0, true, false, false);
// get all sheets in workbook
Excel.Sheets excelSheets = excelWorkbook.Worksheets;
// get some sheet
string currentSheet = "Sheet1";
Excel.Worksheet excelWorksheet =
(Excel.Worksheet)excelSheets.get_Item(currentSheet);
// access cell within sheet
Excel.Range excelCell =
(Excel.Range)excelWorksheet.get_Range("A1", "A1");
]
[]Надеюсь, это поможет[
] []MDSN информации []здесь[][
]] А как насчет чего-то подобного? (непроверено)[
] [//using Excel = Microsoft.Office.Interop.Excel;
Excel.ApplicationClass app = new Excel.ApplicationClass();
Excel.Workbook workbook = app.Workbooks.Open("YourFile.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);
Excel.Worksheet worksheet = (Excel.Worksheet)workbook.Sheets["Number 3"];
worksheet.Activate();
] Если вы хотите представить пользователю визуальную обратную связь, эти два утверждения установят активированный лист и выберут диапазон соответствующим образом:
Рассмотрите возможность включения следующего утверждения непосредственно перед инициализацией Excel.Range...
// Установить активный лист в Excel
excelWorksheet.Activate()
Также рассмотрите возможность включения следующего утверждения сразу после инициализации Excel.Range...
// Установите активный диапазон в Excel
excelCell.Activate()