serbanov Ответов: 2

Группировка строк в excel с помощью C#


Привет ребята,

Может быть, это и обсуждалось, но я не нахожу ничего подходящего для моей проблемы ... У меня есть следующий код

Excel.Application xlApp = new Microsoft.Office.Interop.Excel.Application();

if (xlApp == null)
{
    Console.WriteLine("Excel is not properly installed!!");
    return;
}

Excel.Workbook xlWorkBook;
Excel.Worksheet xlWorkSheet;
object misValue = System.Reflection.Missing.Value;
Excel.Range xlRange;

xlWorkBook = xlApp.Workbooks.Add(misValue);
xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1);
xlWorkSheet.Name = "Raport generated";
xlWorkSheet.Cells[1, 1] = "ceva";
xlWorkSheet.Cells[2, 1] = "ceva";
xlWorkSheet.Cells[3, 1] = "ceva";
xlWorkSheet.Cells[4, 1] = "ceva";
xlWorkSheet.Cells[5, 1] = "ceva";
xlWorkSheet.Cells[6, 1] = "ceva";
xlWorkSheet.Cells[7, 1] = "ceva";
xlWorkSheet.Cells[8, 1] = "ceva";



xlWorkBook.SaveAs("D:\\Excel.xls", Excel.XlFileFormat.xlWorkbookNormal, misValue, misValue, misValue, misValue, Excel.XlSaveAsAccessMode.xlExclusive, misValue, misValue, misValue, misValue, misValue);
xlWorkBook.Close(true, misValue, misValue);
xlApp.Quit();


Console.ReadKey();


И я хочу сгруппировать строки от 2 до 8 (имея знак " + " в моем excel и когда я нажимаю его, чтобы развернуть), как я могу это сделать ?

Заранее спасибо.

Что я уже пробовал:

xlWorkSheet.get_Range(xlWorkSheet.Cells[2, 1], xlWorkSheet.Cells[8, 1]).Group();

2 Ответов

Рейтинг:
6

serbanov

string _tempPath = _tempRowNb.ToString() + _row.ToString();

Excel.Range myRange = xlWorkSheet.Rows[_tempPath, misValue] as Excel.Range;
myRange.OutlineLevel = 1;
myRange.Group(misValue, misValue, misValue, misValue);



Это мое решение. Надеюсь, кто-нибудь им воспользуется.


Рейтинг:
2

MJ2014

Excel.Range xlRange = xlWorkSheet.get_Range(xlWorkSheet.Cells[2, 1], xlWorkSheet.Cells[8, 1]);
            xlRange.rows.Group(misValue, misValue, misValue, misValue);
            xlRange.rows.OutlineLevel = 1;


попробовать это. Это я уже использовал в своей программе


serbanov

Что-то подобное я тоже пробовал, теперь я генерирую файл excel, чтобы проверить его, Спасибо !

Проблема в том, что я не могу использовать "A1" для "A10", потому что я могу расширить даже до "AA" или "ZZZ", чтобы понять, какой excel я генерирую. Я перебираю более 200 файлов и использую их содержимое. Это инструмент, который я использую для итерации .Файлы C и. h для компании. Я отмечу как решение вашего поста, спасибо.