public Worker(string fileName) { flag = true; fileWorker = fileName; objectExcel = new Application(); //bookWorker = OpenBook.Open(objectExcel, fileWorker); OpenExcelBook.OpenBook bk = new OpenExcelBook.OpenBook(); bookWorker = bk.OpenFile(objectExcel, fileWorker); sizeWork = bookWorker.Sheets.Count; sheet = new _Worksheet[sizeWork]; clWork = new Class1[sizeWork]; if (bookWorker.Worksheets.Count >= sizeWork) { for (int i = 0; i < sizeWork; i++) { sheet[i] = (_Worksheet)bookWorker.Worksheets[i + 1]; clWork[i] = new Class1(sheet[i]); } if (clWork[0].getcell(2, 17).ToString() != "Номер строки маршрутки") { flag = false; MessageBox.Show("Это не лист заданий", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error); return; } } }
public RunWorks(string fileName) { flag = true; fileWorker = fileName; objectExcel = new Application(); //bookWorker = OpenBook.Open(objectExcel, fileWorker); OpenExcelBook.OpenBook bk = new OpenExcelBook.OpenBook(); bookWorker = bk.OpenFile(objectExcel, fileWorker); sizeWork = bookWorker.Sheets.Count; sheet = new _Worksheet[sizeWork]; clRun = new Class1[sizeWork]; if (bookWorker.Worksheets.Count >= sizeWork) { for (int i = 0; i < sizeWork; i++) { sheet[i] = (_Worksheet)bookWorker.Worksheets[i + 1]; clRun[i] = new Class1(sheet[i]); } } if (clRun[0].getcell(2, 17).ToString() != "Стоимость") { flag = false; MessageBox.Show("Это не лист выполненных заданий", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error); return; } int[] ind = new int[sizeWork]; for (int i = 0; i < sizeWork; i++) { ind[i] = 5; while (clRun[i].getcell(ind[i], 1) != null) { ind[i]++; } } }
public UnitMarsh(string fileName) { flag = true; fileMarsh = fileName; objectExcel = new Application(); // bookMarch = OpenBook.Open(objectExcel, fileMarsh); OpenExcelBook.OpenBook bk = new OpenExcelBook.OpenBook(); bookMarch = bk.OpenFile(objectExcel, fileMarsh); marsh = (_Worksheet)bookMarch.Worksheets[1]; if (marsh.Name != "Маршрутка") //Если ИМЯ в данной строке не является Маршрутка { flag = false; MessageBox.Show("Это не маршрутка", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error); return; } else //Переходим сюда { sheet = new _Worksheet[size]; cls = new Class1[size]; begine = 7; //Cтрока с которой начинаем оброботку данных. for (int i = 0; i < size; i++) { sheet[i] = (_Worksheet)bookMarch.Worksheets[i + 2]; cls[i] = new Class1(sheet[i]); int rw = 8; while (cls[i].getcell(rw, 17) != null) // Проверяет листы на наличие данных. Если хотя бы на одном из листов есть данные, то оброботка данных не происходит. { try { if (begine < Convert.ToInt32(cls[i].getcell(rw, 17))) { begine = Convert.ToInt32(cls[i].getcell(rw, 17)); //Устанавливает номер строки с которой начинать оброботку данных.???? } rw++; } catch (Exception) { MessageBox.Show( "Неверный формат: лист " + (i + 2).ToString() + ", строка " + rw.ToString(), "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error); objectExcel.Quit(); return; } } } string str = ""; clM = new Class1(marsh); sizeRows = 7; while (str != "*") { sizeRows++; if (sizeRows == 5000) // Проверка на наличие метки конца листа * { MessageBox.Show("Нет конца листа. Проверте данные.", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error); objectExcel.Quit(); return; } if (clM.getcell(sizeRows, 11) != null) { str = clM.getcell(sizeRows, 11).ToString(); } } for (int k = 0; k < koef.Capacity; k++) { koef.Add(Convert.ToInt32(clM.getcell(8, 10))); } } }