Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.09.2011, 19:24   #1
voverrr
Пользователь
 
Регистрация: 25.08.2010
Сообщений: 62
По умолчанию добавить в ячейку Excel данные и сохранить прежние

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

код:
Код:
procedure TForm1.Button5Click(Sender: TObject);
var
XL:variant;
i: integer;

begin
i:=1;
	XL:=CreateOleobject('Excel.Application');                 ///открывает эксель
	XL.DisplayAlerts:= false;                   //отключаем предупреждения
	XL.Workbooks.open('C:\Program Files\hen\ban_list.xls');
	XL.Workbooks.Add;
	XL.visible := False;
	while XL.cells[i,1].Text<>'' do   ///определяет количество заполненных строк, чтобы вставить данные в первую незаполненную
	begin
	 i:=i+1;
	end;
	xl.cells[5,8].value:='12345';     ///для примера в постороннюю ячейку хочу вставить буквы
	XL.ActiveWorkbook.saveas('C:\Program Files\hen\ban_core.xls');///сохраняю пока что под другим именем, чтобы первоначальный список не ломать.
	XL.quit;
	end;
так вот он данные-то в ячейку заносит, но те, что были до этого - не оставляет. Как сделать, чтобы он и прежние сохранял и новые добавлял?
voverrr вне форума Ответить с цитированием
Старый 03.09.2011, 21:42   #2
voverrr
Пользователь
 
Регистрация: 25.08.2010
Сообщений: 62
По умолчанию

всё.разобрался сам методом научного тыка:
Код:
procedure TForm1.Button5Click(Sender: TObject);
var
XL:variant;
i: integer;

begin
i:=1;
	XL:=CreateOleobject('Excel.Application');
	XL.DisplayAlerts:= false;
	XL.Workbooks.open('C:\Program Files\hen\ban_list.xls');
	//XL.Workbook.Add;  //не создавать новый workbook
	XL.visible := False;
	while XL.cells[i,1].Text<>'' do
	begin
	 i:=i+1;
	end;
	XL.Cells[i, 1]:='Привет!';// добавляет в конец списка
	XL.ActiveWorkbook.saveas('C:\Program Files\hen\ban_list.xls');
	XL.quit;
	end;
voverrr вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сохранить Данные valerij Microsoft Office Excel 6 05.07.2011 10:56
Как данные из одного файла Excel сохранить в другой? Papiruzzz Microsoft Office Excel 3 17.01.2011 13:14
Из Экселя ячейку в ворд и сохранить файл с именем ячейки Zhenya2030 Microsoft Office Word 1 19.07.2010 15:36
добавить фразу в каждую ячейку Korablin Microsoft Office Excel 1 01.12.2009 05:17
В ячейку добавить текст Romuald Microsoft Office Excel 2 13.02.2009 15:45