четверг, 29 августа 2013 г.

Работа с файлами Excel

Чтение данных из файла. 
Эксель = new COMОбъект("Excel.Application");
Книга = Эксель.Workbooks.Open(ФайлДанных);
Лист = Книга.Worksheets(1);

ВсегоСтрок = Лист.Cells.CurrentRegion.Rows.Count;

Для СтрокаТаблицы = 1 по ВсегоСтрок Цикл

Состояние("Считываю " + СтрокаТаблицы + " из " + ВсегоСтрок + " (" + Цел(СтрокаТаблицы/ВсегоСтрок * 100) + "%)");

ДанныеКолонки1 = СокрЛП(Формат(Лист.Cells(СтрокаТаблицы,1).Value, "ЧГ=0"));

Если НЕ ЗначениеЗаполнено(ДанныеКолонки1 ) Тогда
Продолжить;
КонецЕсли; 

КонецЦикла;

Эксель.Application.Quit();

Сохранение табличного документа в файл.
//Попросим пользователя выбрать каталог для сохранения
ДиалогВыбораФайла = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.ВыборКаталога);
ДиалогВыбораФайла.Заголовок = "Выберите каталог...";
ДиалогВыбораФайла.ПолноеИмяФайла = "";
ДиалогВыбораФайла.ПредварительныйПросмотр = ЛОЖЬ;
ДиалогВыбораФайла.ПроверятьСуществованиеФайла = ЛОЖЬ;

//Проверим, что файл выбран
Если ДиалогВыбораФайла.Выбрать() Тогда
ПутьКаталога = ДиалогВыбораФайла.Каталог;
Иначе
Возврат;
КонецЕсли;

FileName                               = "FileName";


ПутьФайлаСохранения = СокрЛП(ПутьКаталога) + "\FileName.xls";
Состояние("Сохраняю данные в файл: """ + ПутьФайлаСохранения + """");

ЭлементыФормы.Результат.Записать(ПутьФайлаСохранения, ТипФайлаТабличногоДокумента.XLS);


Исправление данных в файле
//Горизонтальное выравнивание во всей колонке
Лист.Range("A1:B" + Формат(Лист.Cells.CurrentRegion.Rows.Count, "ЧГ=0")).HorizontalAlignment=-4108;


//Изменение цвета фона всей колонки
Лист.Range("A1:M1").Interior.ColorIndex=6;
//Добавление автофильтров для колонки
Лист.Range("A1").AutoFilter();
//Сохранение и закрытие
Книга.Save();
Книга.Close();
//Выход из приложения
Эксель.Application.Quit();

Комментариев нет:

Отправить комментарий