Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.01.09;
Скачать: [xml.tar.bz2];

Вниз

Excel и Delphi   Найти похожие ветки 

 
Weare   (2002-12-23 13:36) [0]

Добрый день мастера.
Подскажите, плз, как можно из Excel"евского файла закачать в таблицу Парадокс только те записи, где стоит соответствующая фамилия?
Вообще, как можно качать данные с Excel"я?
Подскажите, уважаемые, хоть в каком направлении двигаться.


 
RWolf   (2002-12-23 14:37) [1]


var vExcel,vWorkBook,vWorkSheet,vCell,v1,v2,vs: OLEVariant;
...
vExcel := CreateOLEObject("Excel.Application");
vWorkBook := vExcel.WorkBooks.Add;
vWorkSheet := vWorkBook.WorkSheets.Add;

vWorkSheet.Cells[1,1]:=3.14159;
vWorkSheet.Cells[2,1]:="тест";

vExcel.Visible := True


 
RWolf   (2002-12-23 14:43) [2]

ЗЫ: это пример вставки данных в Excel, вырезан из рабочего приложения. Данные _из_ Excel - качаются так же. Понятия запроса в Excel нет, так что качать придется все подряд и выбирать нужные данные самому.
Подробнее о методах/свойствах/и т.п. - см. встроенный в Excel help (то, что касается VBA)


 
Weare   (2002-12-23 14:59) [3]

Огр. спасибо!


 
Jeka   (2002-12-23 17:08) [4]

Из одной книги выдрал,самому когдато надобыло
Простой пример думаю все понятно

procedure TForm1.SpeedButton1Click(Sender: TObject);
var
RangeE:Excel2000.Range;
I, Row:Integer;
Bookmark:TBookmarkStr;
begin
ExcelApplication1.Visible[0]:=True;
ExcelApplication1.Workbooks.Add(NULL,0);
RangeE:=ExcelApplication1.ActiveCell;
for I:=0 to Table1.Fields.Count - 1 do
begin
RangeE.Value:=Table1.Fields [I].DisplayLabel;
RangeE:=RangeE.Next;
end;
try
Bookmark:=Table1.Bookmark;
try
Table1.First;
Row:=2;
while not Table1.Eof do
begin
RangeE:=ExcelApplication1.Range["A"+
IntToStr(Row), "A"+ IntToStr(Row)];
for I:=0 to Table1.Fields.Count - 1 do
begin
RangeE.Value:=Table1.Fields[I].AsString;
RangeE:=RangeE.Next;
end;
Table1.Next;
Inc(Row);
end;
finally
Table1.Bookmark:=Bookmark;
end;
finally
Table1.EnableControls;
end;
RangeE:=ExcelApplication1.Range["A1","E"+ IntToStr (Row-1)];
RangeE.AutoFormat(3,NULL,NULL,NULL,NULL,NULL,NULL);
end;


procedure TForm1.DBGrid1TitleClick(Column: TColumn);
begin
Table1.IndexFieldNames :=Column.FieldName;
end;


 
Weare   (2002-12-23 18:17) [5]

>to Jeka

Подскажи откуда взялось Excel2000.Range


 
Jeka   (2002-12-26 08:13) [6]

для заполнения таблицы используется внутренний объект Excel - Range Есть такой же у Word чтобы небыло путуници пишут excel2000.range Вобщем для определения библиотеки ексель.



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2003.01.09;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.009 c
14-25088
vitjok
2002-12-20 23:09
2003.01.09
А кто брил интимные места


1-24882
idpro
2002-12-25 16:03
2003.01.09
Отключение темы WIndows XP для своего приложения


1-24840
Alathorne
2002-12-27 14:13
2003.01.09
RXLib For


7-25122
Lamer2000
2002-07-30 12:34
2003.01.09
Перехват нажати кнопки.


3-24809
Che
2002-12-16 23:48
2003.01.09
Внесение данных





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский