Форум программистов
 
Расширенный поиск
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

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



Ответ
 
Опции темы
Старый 12.01.2017, 09:15   #1
Torry_Witch
Новичок
 
Регистрация: 12.01.2017
Сообщений: 2
Репутация: 10
По умолчанию Присоединение таблицы Excel через ExcelAplication в Delphi 7

Здравствуйте! Очень нужна помощь!
В Delphi 7 создана форма
aform.JPG
К форме подключена таблица excel.xls с соответствующими полями через ExcelApplication. Написана процедура добавления новых строк в таблицу.

Код:

var
  Form3: TForm3;
  Ap:Variant;
  v,d:integer;
implementation
  uses Unit1;
{$R *.dfm}




procedure TForm3.BitBtn1Click(Sender: TObject);
begin
Form1.Show;
Form3.Close;
end;



procedure TForm3.FormCreate(Sender: TObject);
begin
 Ap := CreateOleObject('Excel.Application');

end;

procedure TForm3.Button1Click(Sender: TObject);
begin
 Ap.Workbooks.Open(ExtractFilePath(ParamStr(0))+'rabota2.xls');
 Ap.WorkSheets[1].Activate;
 d:=Ap.ActiveSheet.UsedRange.Rows.Count+1;// подсчет кол-во знятых строк+1
    Ap.Cells.Item[d,1] :=Edit9.Text;
    Ap.Cells.Item[d,2] :=Edit10.Text;
    Ap.Cells.Item[d,3] :=Edit11.Text;
    Ap.Cells.Item[d,4] :=Edit12.Text;
    Ap.Cells.Item[d,5] :=Edit13.Text;
    Ap.Cells.Item[d,6] :=Edit14.Text;
    Ap.Cells.Item[d,7] :=Edit15.Text;
    Ap.Cells.Item[d,8] :=Edit16.Text;
    Ap.Cells.Item[d,9] :=Edit17.Text;
 Ap.DisplayAlerts:=False;
 Ap.ActiveWorkbook.SaveAs(ExtractFilePath(ParamStr(0))+'rabota2.xls');
 showmessage('сохранил ');
 Ap.ActiveWorkbook.Close;
 Ap.Application.Quit;

end;

procedure TForm3.Button2Click(Sender: TObject);
begin
 Ap.Workbooks.Open(ExtractFilePath(ParamStr(0))+'rabota2.xls');
 Ap.WorkSheets[2].Activate;
 v:=Ap.ActiveSheet.UsedRange.Rows.Count+1;// подсчет кол-во занятых строк+1
    Ap.Cells.Item[v,1] :=Edit1.Text;
    Ap.Cells.Item[v,2] :=Edit2.Text;
    Ap.Cells.Item[v,3] :=Edit3.Text;
    Ap.Cells.Item[v,4] :=Edit4.Text;
    Ap.Cells.Item[v,5] :=Edit5.Text;
    Ap.Cells.Item[v,6] :=Edit6.Text;
    Ap.Cells.Item[v,7] :=Edit7.Text;
    Ap.Cells.Item[v,8] :=Edit8.Text;
 Ap.DisplayAlerts:=False;
 Ap.ActiveWorkbook.SaveAs(ExtractFilePath(ParamStr(0))+'rabota2.xls');
 showmessage('сохранил ');
 Ap.ActiveWorkbook.Close;
 Ap.Application.Quit;
end;

procedure TForm3.ExcelApplication1NewWorkbook(ASender: TObject;
  const Wb: _Workbook);
begin

end;

end.

Все работает. Теперь возникло два вопроса:
1. Нам надо сделать Кнопку ПОИСК по фамилии и вывод на экран.
2. Удалить необходимые строки через кнопу УДАЛЕНИЕ.

Уже взорвали себе мозг и интерет. Ранее с компонентом ExcelApplication не сталкивалась. Создавала связь с базой через ADOConnection ну и со всеми вытекающими компонентами, но столкнулась с проблемой переноса базы на другой комп. Теряется связь с таблицей.
Помогите мне, пожалуйста, гении!
Полный тупик в голове....

Последний раз редактировалось Аватар; 12.01.2017 в 09:51.
Torry_Witch вне форума   Ответить с цитированием
Старый 12.01.2017, 11:45   #2
evg_m
Профессионал
 
Регистрация: 20.04.2008
Сообщений: 4,103
Репутация: 1843
По умолчанию

Цитата:
Ранее с компонентом ExcelApplication не сталкивалась. Создавала связь с базой через ADOConnection
может стоит продолжать так и работать?
Цитата:
но столкнулась с проблемой переноса базы на другой комп. Теряется связь с таблицей.
Для работы на другом достаточно модифицировать (программно!!!) строку подключения ADOconnection.ConnectingString
берете свою "рабочую" строку подключения
находите в ней путь+имя подключаемого файла
подставляете туда требуемый путь + имя
примерно так как показано здесь
http://www.programmersforum.ru/showt...xtractFilePath
__________________
программа — запись алгоритма на языке понятном транслятору
evg_m на форуме   Ответить с цитированием
Старый 12.01.2017, 14:29   #3
Torry_Witch
Новичок
 
Регистрация: 12.01.2017
Сообщений: 2
Репутация: 10
По умолчанию

Спасибо большое! Попробую.
Torry_Witch вне форума   Ответить с цитированием
Ответ



Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Работа с Excel через Delphi Умфарг Помощь студентам 1 11.05.2012 13:31
Delphi-оболочка для MS SQL Server (создание, присоединение, восстановление, резерв. копирование БД) Машуля Помощь студентам 0 28.11.2009 12:27
Ссылка на Excel-файл через поле таблицы megaten БД в Delphi 1 29.05.2009 01:18
График в excel через delphi RoZi БД в Delphi 2 04.04.2009 09:53




14:45.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.

Покупайте на сайте www.skinon.ru уникальные чехлы и наклейки для телефонов.
таргетированный трафик


как улучшить посещаемость, а также решения по монетизации сайтов, видео и приложений

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru