![]() |
|
|
#1
|
||||
|
||||
|
Доброго дня всем. Возник вопрос при получении данных из файла Excel. Данные берутся из файла и грузятся в RichEdit. Если делать таким образом:
Код:
var
Ex, WorkBook, Sheet, dir, mon, dat, sl: Variant;
d1 : String;
d1:= Sheet.Range['AC6'];
begin
dir:=Edit1.Text;
sl:=Edit4.Text;
mon:=Edit2.Text;
dat:=Edit3.Text;
Ex := CreateOleObject('Excel.Application');
WorkBook := Ex.WorkBooks.Open(''+(dir)+''+(sl)+''+(mon)+'.xls');
Sheet := WorkBook.WorkSheets[dat];
RichEdit1.Clear;
RichEdit1.Lines.Add(''+d1+'');
Ex.ActiveWorkBook.Close(0);
Ex.Quit;Код:
var
Ex, WorkBook, Sheet, dir, mon, dat, sl: Variant;
d1 : String;
d1:= Sheet.Range['LabeledEdit1.Text'];
begin
dir:=Edit1.Text;
sl:=Edit4.Text;
mon:=Edit2.Text;
dat:=Edit3.Text;
Ex := CreateOleObject('Excel.Application');
WorkBook := Ex.WorkBooks.Open(''+(dir)+''+(sl)+''+(mon)+'.xls');
Sheet := WorkBook.WorkSheets[dat];
RichEdit1.Clear;
RichEdit1.Lines.Add(''+d1+'');
Ex.ActiveWorkBook.Close(0);
Ex.Quit;При таком варианте, не может найти ячейку в книге, ругается Excel при открытии. В чем мой так сказать, косяк? Благодарю за помощь. |
|
#2
|
|||
|
|||
|
В том, что ты тормоз:
Код:
d1:= Sheet.Range[LabeledEdit1.Text]; PS. Ну и в секцию кода перенеси эту строку ![]() |
|
#3
|
||||
|
||||
|
При таком варианте
Код:
d1:= Sheet.Range[LabeledEdit1.Text]; |
|
#4
|
||||
|
||||
|
Цитата:
Точно, тормоз. Все работает. Спасибо за подсказку. ![]() |
|
#5
|
|||
|
|||
|
Да, бывает.
Иной раз смотришь на ошибку и не видишь ее. Сходишь кофейку попить/покурить/с народом потрындеть, глянь, а оно вот оно... |