Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.01.09;
Скачать: CL | DM;

Вниз

Delphi7 и Excel2000   Найти похожие ветки 

 
чайник   (2003-12-17 15:24) [0]

Уважаемые мастера, почему при передаче данных в таблицу Excel в первый раз грузит все нормально, если хочу повторно открыть таблицу по нажатию кнопки - молчит и не грузит. У меня windowsxp, excel2000.
код следующий:
....
private
Excel:Variant;n:OleVariant;
....

procedure Tvvod.Excel1Click(Sender: TObject);
var Sheet: Variant;
Row:Integer; it:real;

begin
if not VarIsEmpty(Excel) then Exit;
Try
dat1.q_zai.Open;
except
begin
showmessage(нет соединения с сервером");
exit;
end;
end;

try
Excel:=CreateOleObject("Excel.Application")
except
begin
Showmessage(Нет доступа к Excel");
exit;
end;
end;
n:="d:\zaim.xls";
screen.cursor:=crhourGlass;
Excel.Workbooks.add(n);
Sheet:=Excel.Workbooks[1].Sheets[1];
Row:=4;
while not dat1.q_zai.eof do
begin
it:=it+dat1.q_zaisum_s.asfloat;
Sheet.Cells[Row,1]:=dat1.q_zainame.value;
Sheet.Cells[Row,2]:=dat1.q_zainom_in.value;
Sheet.Cells[Row,3]:=dat1.q_zaisum_s.asstring;
Sheet.Cells[Row,4]:=dat1.q_zaiproz_s.asstring;
Sheet.Cells[Row,5]:=dat1.q_zaidate1.asstring;
Sheet.Cells[Row,6]:=dat1.q_zaidate2.asstring;
inc(row);
dat1.q_zai.next;
end;
Sheet.Cells[Row,1]:="Итого";
Sheet.Cells[Row,3]:=it;
screen.cursor:=crdefault;
if not VarIsEmpty(Excel) then begin
Excel.Visible := true;

end;
end;

procedure Tvvod.FormDestroy(Sender: TObject);
begin
if not VarIsEmpty(Excel) then begin
if (Excel.Workbooks.Count > 0) and (not Excel.Visible) then
begin
Excel.WindowState := Excel.xlMinimized;
Excel.Visible := true;
Application.BringToFront;
end
else
Excel.Quit;
Excel := UnAssigned;
end;
end;

Спасибо.


 
чайник   (2003-12-17 15:32) [1]

прошу помощи...спасибо


 
Карелин Артем   (2003-12-17 15:34) [2]

Таблицу открыл, перегнал до конца и не закрыл. Когда пытаешься перегнать второй раз курсор стоит на последней позиции.


 
чайник   (2003-12-17 15:45) [3]

спасибо, в голову это даже не пришло.


 
arf_so   (2003-12-24 09:35) [4]

Слушайте, господа, а как сделать, чтобы не
For i:=5 to 10 do For j:=3 to 5 do
XLApp.WorkBooks[1].WorkSheets[1].Cells[j,i]:=StringGrid.Cells[i,j]
а целиком всю таблицу воткнуть в определенное место листа Excel?


 
Shirson   (2003-12-24 11:21) [5]

Какую таблицу?


 
Романов Р.В.   (2003-12-24 11:39) [6]


> arf_so (24.12.03 09:35) [4]
> Слушайте, господа, а как сделать, чтобы не

Range.Value := VariantArray;


 
Карелин Артем   (2003-12-24 13:07) [7]

Романов Р.В. © (24.12.03 11:39) [6]
Это самый быстрый вариант.



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

Текущий архив: 2004.01.09;
Скачать: CL | DM;

Наверх




Память: 0.45 MB
Время: 0.01 c
1-25368
Anton.
2003-12-25 11:44
2004.01.09
как поставить курсор в конец строки


4-25648
Islander
2003-11-08 17:18
2004.01.09
Как получить текущий системный фонт в виде объекта TFont?


1-25327
Ega23
2003-12-22 15:43
2004.01.09
Как в message указатель засунуть?


14-25586
SergP
2003-12-17 22:56
2004.01.09
Как на PHP определить IP клиента?


1-25353
Olphi
2003-12-21 13:52
2004.01.09
перключение MDI форм в меню





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский