Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Из Excel в DBGrid [D7, Paradox]


Вовик ©   (2005-02-11 20:23:00) 

Предположим я копирую колоку из Excel.
Как мне достать её из буфера, а потом всавить в DBGrid c той строчки где курсор и дальше вниз?


ДухКороляАртура   (2005-02-13 22:10:00) [1]

Этот писал для скриптовой системы, пример в паскале
excel := createoleobject('excel.application');
//excel.visible := ShowExcel.Checked;
FileName := GetCurrentDir + '\orders.xls';
workbook := excel.workbooks.open(FileName);
worksheet := workbook.ActiveSheet;

i := 1;
ordid := '*';
while (ordid <> '') do
begin
 cell := worksheet.Cells(i,1);
 ordid := cell.Text;
 if (ordid <> '') then
 begin
   Append;
   dbEdit1.SetValue(ordid);
   cell := worksheet.Cells(i,2);
   dbEdit2.SetValue(cell.Text);
   cell := worksheet.Cells(i,3);
   dbEdit3.SetValue(cell.Text);
   cell := worksheet.Cells(i,4);
   dbEdit4.SetValue(cell.Text);
   cell := worksheet.Cells(i,5);
   dbEdit5.SetValue(cell.Text);
   Post;
 end;
 i := i + 1;
end;

//workbook.Close;
//Excel.Quit;
Excel := unassigned;

перепишешь под дельфю сам, принцип тот же


Вовик   (2005-02-13 09:07:00) [2]

procedure TBzForm.PASTEBitBtnClick(Sender: TObject);
var
CurrentPos: TBookmark;
FieldIndex,i:integer;
begin
MemoTXT.Clear;
MemoTXT.Lines.Add(Clipboard.AsText);
CurrentPos:=MainDataModule.QueryRab.GetBookmark;
FieldIndex:=????????????????????????????????????;
for i:=0 to (MemoTXT.Lines.Count-2) do begin
MainDataModule.QueryRab.Edit;
MainDataModule.QueryRab.Fields.Fields[FieldIndex].Text:=MemoTXT.Lines.Strings[i];
MainDataModule.QueryRab.Next;
end;
end;
Это я так сделал. Пользователь копирует столбик то если AsText его то это строки за ними пробел. Два столбика --два пробела.
Но возник вопрос-Как узнать индекс поля где находится указатель в Query?


cherrex   (2005-02-12 16:15:00) [3]

YurikGL © Но, вроде как, существует метод доступа к xls типа как к таблице БД, так что лучше даже его использовать.

А какой метод?


YurikGL   (2005-02-11 22:34:00) [4]

Как вариант, открыть excel через OLE, считывать по одной строчке и добавлять соответсвующие записи с помощью комманды insert into.

Но, вроде как, существует метод доступа к xls типа как к таблице БД, так что лучше даже его использовать.


Вовик   (2005-02-11 20:56:00) [5]

Ну ладно тогда как в Query


Алхимик   (2005-02-11 20:38:00) [6]

Читать справку по DBGrid, до тех пор пока не будет достигнуто понимание того, что этот компонент только отображаетнекоторый набор данных.


Наверх

Титульная страница Поиск, карта сайта Написать письмо