Доброго дня всем. Возник вопрос при получении данных из файла 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;
То есть я могу указать в LabeledEdit с какой ячейке брать какие данные.
При таком варианте, не может найти ячейку в книге, ругается Excel при открытии. В чем мой так сказать, косяк? Благодарю за помощь.